一尘不染

如何正确设置EC2负载平衡以允许实时文件同步?

linux

我是EC2的新手。我已经阅读了很多,观看了许多视频和教程,并且对所有工作原理都非常熟悉。我仍然没有几个问题似乎找不到直接答案。

如果我有3个实例(Linux),它们的负载均衡都服务于同一站点,并且该站点是动态php /
mysql驱动的,用户每秒在其中发布文件论坛线程,那么数据库和文件如何实时同步到所有3个实例。

  1. 我是否需要在RDS上拥有每个实例都指向它的数据库。
  2. 用户文件如何。如果用户将文件上传到站点,则该文件应立即在所有实例上可用,这怎么可能。我认为在3个实例上复制3个副本不是很实际。
  3. 如果我修改站点,比如说更改CSS文件中的内容,如何将更改同步到所有实例。
  4. EBS或S3在所有这些方面如何发挥作用。

阅读 342

收藏
2020-06-07

共1个答案

一尘不染

我是否需要在RDS上拥有每个实例都指向它的数据库。

这是一个选择,或者您可以启动另一个实例,使其位于应用服务器的后面,将MySQL放在其上,并使它们全部连接到该实例。需要注意的一件事,请确保使用专用ip通过内部网络进行连接,并确保所有安全性都严格。

用户文件如何。如果用户将文件上传到站点,则该文件应立即在所有实例上可用,这怎么可能。我认为在3个实例上复制3个副本不是很实际。

不,这不切实际。您可以将其上载到他们都可以访问的后端数据库实例,但是实际上您应该将其上载到所有实例可以与s3tools或其他组件一起使用的存储桶中。

如果我修改站点,比如说更改CSS文件中的内容,我如何将更改同步到所有实例。

吉特 (或svn),但是您可以将cloudfront用于您的JS和CSS文件....不错。并使用S3存储桶作为您的来源…

EBS或S3在所有这些方面如何发挥作用。

您的数据库应始终位于ebs卷上,以免丢失。S3可用于在整个环境中廉价,轻松地共享和存储文件。

2020-06-07