View a markdown version of this page

在 AWS 上扩展 PHP 应用程序 - 在 AWS 上扩展 PHP 应用程序

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 AWS 上扩展 PHP 应用程序

发布日期:2022年 1月20日 (图表历史)

该架构展示了如何在上 AWS运行高可用性、高性能和安全的PHP应用程序。您可以使用支持自动扩展的亚马逊弹性计算云,将亚马逊 Aurora 用于数据库层,使用亚马逊 CloudFront进行 CI/CD 自动化内容交付。

在 AWS 上扩展 PHP 应用程序

架构图显示了 AWS 使用亚马逊弹性计算云、亚马逊 Aurora ElastiCache、亚马逊和亚马逊的可扩展PHP应用程序 CloudFront。

以下步骤描述了架构:

  1. Route 53 路由解析域名服务 (DNS) 的最终用户请求。

  2. 亚马逊使用全球接入点 CloudFront 缓存内容并加速交付。 CloudFront 还可以处理 SSL 终止,与自动创建和续订 SSL 证书的 AWS 证书管理器集成。

  3. AWS WAF CloudFront 与应用程序负载均衡器的集成缓解了 OWASP 十大应用程序漏洞。

  4. 应用程序负载均衡器将 HTTP/S 请求路由到在私有子网上运行的 Amazon EC2 实例。

  5. 亚马逊 Linux 2 AMI 包含PHP和其他必需的二进制文件,包括 AWS 软件开发工具包。PHP

  6. 安装在亚马逊 Linux 2 AMI 上的亚马逊 CloudWatch代理会流式传输应用程序日志、其他主机级指标和自定义业务指标。

  7. Amazon EC2 Auto Scaling 根据 CPU 和内存等指标管理实例启动。它使用亚马逊 Graviton 实例进行成本优化。

  8. 使用 AWS Systems Manager 会话管理器,您可以在 AWS 控制台上通过基于 Web 的会话连接到 Amazon EC2 实例,无需密钥对或打开 SSH 端口。

  9. 数据库凭证安全地存储在 AWS 机密管理器上。使用 AWS 软件开发工具包PHP,应用程序代码通过 IAM 角色检索存储在密钥管理器上的证书。

  10. 应用程序代码 CodeCommit 使用熟悉的Git命令行界面 (CLI) 存储在 AWS 上。

  11. AWS 使用 AWS 挂钩 CodePipeline实施 CI/CD和协调代码部署,该 CodeDeploy 挂钩会在新的 Amazon EC2 实例启动时触发。

  12. 亚马逊 ElastiCache用于Redis缓存会话数据。

  13. 亚马逊 Aurora Multi-AZ 支持高可用性。应用程序通过自动处理故障转移的 DNS 端点进行连接。Aurora 读取器终端节点处理读取操作,从而减轻了 Aurora 写入器实例的负载。

  14. 亚马逊弹性文件系统(亚马逊 EFS)存储网页内容并与 Auto Scaling 组共享。

延伸阅读

有关更多信息,请参阅以下资源:

图表历史

要获得有关此参考架构图更新的通知,请订阅 RSS 提要。

变更说明日期

初次发布

参考架构图首次发布。

2022 年 1 月 20 日

注意

要订阅 RSS 更新,必须为正在使用的浏览器启用 RSS 插件。