你能有两个谷歌云项目与同一个云SQL数据库对话吗



我刚刚在Google Cloud中创建了一个项目,并为该项目附加了一个Cloud SQL数据库实例。我能够部署一个连接到数据库的Django应用程序。

然而,我想创建一个单独的Django应用程序/项目,它连接到我的第一个Django程序所连接的同一个云SQL数据库。

这可能吗

一个Django应用程序负责web抓取并向数据库提供恒定数据,而我的第二个Djano应用程序(我已经部署的那个(分析并返回该数据的json。将这两个应用程序分开是有利的,因为如果我需要修改我的网络抓取算法,整个应用程序就不会停机。

您可以为这两个应用程序使用cloudsql代理。此外,只要您使用有权访问cloudsql的服务帐户授权您的两个应用程序,这应该是可以的。

您可以在当前项目或外部项目中使用所需的数据库。如果你使用云SQL代理,你的应用的服务帐户

  • 如果在应用程序引擎上,则使用默认的AppENgine服务帐户
  • 或计算引擎默认服务帐户
    • 除非您在组件上定义了特定的服务帐户(云运行、计算引擎(
    • 如果可能的话,我强烈建议在组件上使用特定的服务帐户(应用程序引擎不可能(

要授予服务帐户的角色如下:roles/cloudsql.client

但是 ,我建议您明智地考虑您的设计。目前的趋势是将1个数据库锁定为1个服务(或微服务(。

想想架构更新:当你更新架构或其中一个时,两个服务之间需要同步更新,否则另一个应用程序将失败。

同样,在回滚的情况下,两个应用程序都需要回滚。

如果有两个团队,每个应用程序上都有一个团队,那么他们的发布计划必须同步,这样你就会失去速度和灵活性。

也许,它符合您的要求,或者您可以在数据库(其他模式(中复制数据。如你所愿。

相关内容

  • 没有找到相关文章

最新更新