我可以在 AWS 中配置一个实例,但我不知道如何处理多个实例。
目前,我的实例已加载 mysql、php 等(全部集成)。但是,如何确保我的实例可以扩展?如果我有一个站点,需要使用 3 个实例并使用 amazon rds 进行处理,我是否需要将我的代码库托管在这 3 个实例中?
人们通常如何做到这一点?比如 Facebook 有 1000 多台服务器。他们是否将代码库托管在所有 1000 多台服务器中?
答案1
Serverfault 实际上并不是讨论“最佳实践”问题的地方,但这里有几点:
- 是的,您在所有服务器上托管您的 PHP 代码库。
- 设计一个多层应用程序:web 层、app 层(可以与 PHP 应用程序的 web 层结合)、db 层、存储层等。
- 利用亚马逊的数据库(RDS)、文件存储(S3)、消息传递(SQS)等服务。这些是您的应用程序的构建块。
- 为每个层准备一个模板(“AMI”),并配置 CloudWatch 以随着负载随时间上升和下降而使其上升和下降。
- 不要保留任何服务器上的状态,他们可以随时来去。
设计云感知应用程序实际上是一门艺术,不值得为小型应用程序付出努力。无论如何,这不是可以在这里合理解释的事情,这是一个太复杂的话题。