本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 AWS 上扩展 PHP 应用程序
发布日期:2022年 1月20日 (图表历史)
该架构展示了如何在上 AWS运行高可用性、高性能和安全的PHP应用程序。您可以使用支持自动扩展的亚马逊弹性计算云,将亚马逊 Aurora 用于数据库层,使用亚马逊 CloudFront进行 CI/CD 自动化内容交付。
在 AWS 上扩展 PHP 应用程序
以下步骤描述了架构:
-
Route 53 路由解析域名服务 (DNS) 的最终用户请求。
-
亚马逊使用全球接入点 CloudFront 缓存内容并加速交付。 CloudFront 还可以处理 SSL 终止,与自动创建和续订 SSL 证书的 AWS 证书管理器集成。
-
AWS WAF CloudFront 与应用程序负载均衡器的集成缓解了 OWASP 十大应用程序漏洞。
-
应用程序负载均衡器将 HTTP/S 请求路由到在私有子网上运行的 Amazon EC2 实例。
-
亚马逊 Linux 2 AMI 包含PHP和其他必需的二进制文件,包括 AWS 软件开发工具包。PHP
-
安装在亚马逊 Linux 2 AMI 上的亚马逊 CloudWatch代理会流式传输应用程序日志、其他主机级指标和自定义业务指标。
-
Amazon EC2 Auto Scaling 根据 CPU 和内存等指标管理实例启动。它使用亚马逊 Graviton 实例进行成本优化。
-
使用 AWS Systems Manager 会话管理器,您可以在 AWS 控制台上通过基于 Web 的会话连接到 Amazon EC2 实例,无需密钥对或打开 SSH 端口。
-
数据库凭证安全地存储在 AWS 机密管理器上。使用 AWS 软件开发工具包PHP,应用程序代码通过 IAM 角色检索存储在密钥管理器上的证书。
-
应用程序代码 CodeCommit 使用熟悉的Git命令行界面 (CLI) 存储在 AWS 上。
-
AWS 使用 AWS 挂钩 CodePipeline实施 CI/CD和协调代码部署,该 CodeDeploy 挂钩会在新的 Amazon EC2 实例启动时触发。
-
亚马逊 ElastiCache用于Redis缓存会话数据。
-
亚马逊 Aurora Multi-AZ 支持高可用性。应用程序通过自动处理故障转移的 DNS 端点进行连接。Aurora 读取器终端节点处理读取操作,从而减轻了 Aurora 写入器实例的负载。
-
亚马逊弹性文件系统(亚马逊 EFS)存储网页内容并与 Auto Scaling 组共享。
延伸阅读
有关更多信息,请参阅以下资源:
图表历史
要获得有关此参考架构图更新的通知,请订阅 RSS 提要。
| 变更 | 说明 | 日期 |
|---|---|---|
初次发布 | 参考架构图首次发布。 | 2022 年 1 月 20 日 |
注意
要订阅 RSS 更新,必须为正在使用的浏览器启用 RSS 插件。