我在同一个 ec2 实例上运行 nginx 和 postgre sql。
它为一个在该数据库上读取和写入数据的 Rails 应用程序提供服务。
我想在 ALB 服务后面有 2 个实例来分配负载并确保可用性。
我应该怎么做才能确保 2 个实例的数据一致?
我在同一个 ec2 实例上运行 nginx 和 postgre sql。
它为一个在该数据库上读取和写入数据的 Rails 应用程序提供服务。
我想在 ALB 服务后面有 2 个实例来分配负载并确保可用性。
我应该怎么做才能确保 2 个实例的数据一致?
将数据库主服务器复制到 EC2 中的另一台服务器上很困难,但正如已经指出的那样,有一些选项。更好的设置方法是将数据库服务器完全放在另一个 EC2 实例上。这样,您可以非常轻松地扩展 Rails 应用程序,并且 Rails 应用程序都可以与数据库服务器通信。
此设置也存在一些问题,因为数据库服务器仅在一个 EC2 实例上。您可以自己设置副本并管理故障转移,也可以让 AWS 为您管理并使用他们的 RDS 服务。使用 RDS,您可以要求 Amazon 为您维护数据库和副本,并在主服务器发生故障时自动执行故障转移。AWS 将为您提供一个端点供您的所有 Rails 应用程序连接。