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

Hus*_*ein 5 linux amazon load-balancing amazon-s3 amazon-ec2

我是EC2的新手.我已经阅读了很多关于它的内容,观看了许多视频和教程,并且非常熟悉一切是如何工作的.我仍然有一些问题,我似乎无法找到直接的答案.

如果我有3个实例(Linux)的负载平衡所有服务于相同的网站,该网站是一个动态的PHP/MySQL的驱动,用户将文件发布论坛帖子每一秒,是如何同步实时所有3个实例数据库和文件.

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

cha*_*man 7

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

这是一个选项,或者您可以启动另一个实例来坐在应用服务器后面,将MySQL放在它上面并让它们都连接到该实例.有一点需要注意,请务必使用私有IP连接内部网络,并确保所有安全性都很严格.

用户文件怎么样?如果用户将文件上传到站点,则该文件应立即立即在所有实例上可用,这是如何实现的.我不认为在3个实例上有3个副本是非常实用的.

不,这不实用.您可以将它上传到他们都有权访问的后端数据库实例,但实际上您应该将其上传到存储桶中的S3,您的所有实例都可以使用s3tools或其他东西.

如果我修改网站,让我们说改变CSS文件中的内容,我如何将更改同步到所有实例.

Git的.(或svn)但你可以使用cloudfront作为你的JS和CSS文件....这不是一个坏主意.并使用S3存储桶作为您的源...

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

您的数据库应始终位于ebs卷上,这样您就不会丢失它.S3可用于在整个环境中廉价,轻松地共享和存储文件.