0

我在计算引擎上运行一个基于 php-mysql 的 Web 应用程序,每天大约有 1K 流量,它的数据库在 Google SQL 上。我不是一个技术人员,但通过大量 YouTube 视频通过耳朵学习,我设法走到了这一步——感谢那些分享所有步骤的专家。

随着流量的增加,我们决定升级网站的外观和感觉,这肯定会涉及文件修改及其数据库,但我们一直在寻找任何可能的解决方案来升级它而不会使网站关闭,从那里我得到了了解 CICD 概念。

根据我的了解,Google 负载均衡器可以根据需要控制指定准备实例的流量,并且我看到 SQL(数据库)可以自动相互复制(如果我错了,请纠正我)

这让我想到,如果我们可以为开发人员/设计人员隔离 1 个实例以开始进行代码更改/设计,而整个世界的其余部分可以转到其他实例,该怎么办?更改完成后,以另一种方式切换流量并与主数据库同步……没有停机时间,新的设计和代码启动并运行。美好的结局。:-)

我想这只是我的一点经验的假设。我在这里向专家提出的问题是......

  1. 这个想法可能/有意义吗?
  2. 如果是这样,有人做过吗?如果是这样,有什么参考吗?
  3. 如果没有参考资料(我找不到太多),谁能帮忙说明实现这个想法可能需要哪些东西?
  4. 如果您不知道#3,我可能需要使用任何特定术语来进一步搜索?
  5. 如果这个想法是不可能的,你知道还有其他可用的解决方案吗?

请用您的专业知识在这里阐明一些观点。先感谢您。

4

1 回答 1

0

这个问题太笼统,无法提供准确的答案。

HTTP 负载均衡器可以根据内容、负载/利用率和健康状态将入口流量重定向到配置的后端。您不太可能使用它自愿将流量路由到特定后端。

对于 Cloud SQL,您应该考虑到它只能将单个主副本复制到一个或多个只读副本。请参阅复制选项

如果您对减少停机时间感兴趣,GKE 和蓝绿部署方法可能适用于这种情况。部署通过充当路由器的服务访问。一旦新的“绿色”版本启动并运行,您可以通过更新服务将流量重定向到它。这种方法的一个缺点是,您需要在 GKE 集群中拥有至少 2 倍的资源来托管您的应用程序。

于 2020-03-26T09:13:05.493 回答