假设:
一家新加坡在线内容服务公司在新加坡的一个IPS数据中心托管其面向公众的WordPress网站。当前的WordPress基础设施包括一个负载平衡器、两个web服务器和一个MySQL数据库服务器。
解决方案架构师的任务是设计具有以下要求的解决方案并将其迁移到AWS:
- 改进网站的性能
- 使web层可扩展且无状态
- 提高数据库服务器的读重负载性能
- 减少亚洲和美国用户的延迟
- 以99.9%的可用性为目标设计
拓扑设计
设计说明
本设计使用三层Tier设计
- 利用Cloudfront提供CDN服务,将静态内容快速传递到用户,选择包括美国和亚洲的价格类别。静态源为S3存储;动态内容的源为ALB
- 为服务设计三个可用区AZ,将EC2实例用自动扩展组的形式部署在三个可用区
- DB服务在每个可用区提供RDS数据库。一个AZ为DB instance,另外两个为Read Replica,缓解读重负载
- 利用Elasticache为热数据提供Cache BD服务,缓解读重负载
- 有状态应用放在App Tier并使用自动扩展组
- 配置EFS跨区域复制
注:
- 在多可用区部署中,Amazon RDS 会自动在不同可用区中配置和维护一个同步备用副本。
- RDS完成故障转移所用的时间取决于在主数据库实例变为不可用时的数据库活动和其他条件。故障转移时间通常为 60–120 秒。
- 备用副本无法处理只读流量。