![使用 AWS 自动扩展和数据库迁移进行升级的最佳实践是什么?](https://linux22.com/image/574997/%E4%BD%BF%E7%94%A8%20AWS%20%E8%87%AA%E5%8A%A8%E6%89%A9%E5%B1%95%E5%92%8C%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%81%E7%A7%BB%E8%BF%9B%E8%A1%8C%E5%8D%87%E7%BA%A7%E7%9A%84%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我想将 ELB 和 AutoScaling 结合用于 Web 应用程序。对于不涉及更改数据库的 Web 应用程序升级,我只需使用更新的图像轮换 AG 中的所有实例等。
但是,如果我们通过数据库迁移进行升级,我相信在执行迁移时我需要将所有流量重定向到静态页面。
处理这些情况的推荐方法是什么?我是否应该在 ELB 前面使用额外的代理,并在升级期间将其指向具有静态页面的服务器?
正如您所知,我没有系统背景,所以请原谅我的无知。
答案1
如果您能够将您的网站置于“只读”模式,那将是理想的。
本质上,您会以这样一种方式构建网站,即在迁移过程中不允许写入数据库。
您可能想要利用的另一种技术是功能切换。这是您部署新代码的地方,但不要立即激活它。然后,您可以快速“切换”新代码的开/关,因为它已经部署。
当然,这一切都取决于您对代码和部署的控制程度、您拥有什么样的网站以及它对数据库的依赖程度。