

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

# AWS Well-Architected 设计注意事项
<a name="aws-well-architected-design-considerations"></a>

该解决方案采用 [AWS Framewor Well-Architected k](https://aws.amazon.com/architecture/well-architected/) 中的最佳实践，可帮助客户在云中设计和运行可靠、安全、高效且经济实惠的工作负载。

本节介绍 Well-Architected 框架的设计原则和最佳实践如何使该解决方案受益。

## 卓越运营
<a name="operational-excellence"></a>

本节介绍我们是如何使用[卓越运营支柱](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/welcome.html)的原则和最佳实践来设计此解决方案的。
+ 使用从 AWS CDK 结构生成的 AWS CloudFormation 模板将所有资源定义为基础设施即代码。
+ 该解决方案将指标推送到各个 CloudWatch 阶段，以提供对 Lambda 函数、ECS 任务、S3 存储桶和其他解决方案组件的可观察性。

## 安全性
<a name="security"></a>

本节介绍我们是如何使用[安全性支柱](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html)的原则和最佳实践来设计此解决方案的。
+ Cognito 对 Web 控制台用户和 API 请求进行身份验证和授权。
+ 所有服务间通信都使用[访问权限最低的 AWS Identity and AWS Identity and Access Managem](https://aws.amazon.com/iam/) ent (IAM) 角色，仅包含所需的最低权限。
+ 所有数据存储，包括 S3 存储桶和 DynamoDB 表，都使用 AWS 托管密钥对静态数据进行加密。
+ 出于审计和合规目的，如果适用，则启用日志记录、跟踪和版本控制。
+ 默认情况下，网络访问是私有的，启用 VPC 终端节点以保持流量在 AWS 网络内。

**注意**  
该解决方案创建的所有日志组都将日志保留 10 年，但 ALB \+ ECS Fargate 模板中的 Web 控制台和 WAF 日志组除外，它们保留了 1 年：  


| 日志组 | 保留 | 
| --- | --- | 
| AWS Step Functions、Lambda 运行时、ECS 测试任务、Cognito 用户池和 API Gateway 访问日志 | 10 岁 | 
| Web 控制台和 WAF（仅限 ALB \+ ECS Fargate 模板） | 1 年 | 
| ECS 容器见解（由 ECS 自动创建） | 永不过期（默认） | 
您可以在 Amazon CloudWatch 控制台中修改这些保留期。

## 可靠性
<a name="reliability"></a>

本节介绍我们是如何使用[可靠性支柱](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/welcome.html)的原则和最佳实践来设计此解决方案的。
+ 该解决方案尽可能使用 AWS 无服务器服务（例如：Lambda、API Gateway、Amazon S3、AWS Step Functions、Amazon DynamoDB 和 AWS Fargate）来确保高可用性并从服务故障中恢复。
+ 所有计算处理都使用 Lambda 函数或 AWS Fargate 上的 Amazon ECS。
+ 数据存储在 DynamoDB 和 Amazon S3 中，因此默认情况下数据会保留在多个可用区中。

## 性能效率
<a name="performance-efficiency"></a>

本节介绍我们是如何使用[性能效率支柱](https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/welcome.html)的原则和最佳实践来设计此解决方案的。
+ 该解决方案使用无服务器架构，能够根据需要进行水平扩展。
+ 该解决方案可以在支持本解决方案中的 AWS 服务的任何区域启动，例如：AWS Lambda、Amazon API Gateway、Amazon S3、AWS Step Functions、亚马逊 DynamoDB、亚马逊 ECS、AWS Fargate 和 Amazon Cognito。
+ 该解决方案自始至终都使用托管服务，以减轻资源配置和管理的运营负担。
+ 该解决方案每天都会自动测试和部署，以实现随着 AWS 服务的变化保持一致性，并由解决方案架构师和主题专家对需要实验和改进的领域进行审查。

## 成本优化
<a name="cost-optimization"></a>

本节介绍我们是如何使用[成本优化支柱](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/welcome.html)的原则和最佳实践来设计此解决方案的。
+ 该解决方案使用无服务器架构；因此，客户只需为其使用量付费。
+ Amazon DynamoDB 可按需扩展容量，因此您只需为使用的容量付费。
+ AWS Fargate 上的 AWS ECS 允许您仅为使用的计算资源付费，无需支付任何前期费用。
+ AgentCore Gateway 可作为分布式负载测试 API 的经济实惠 Lambda-based 代理，无需专用基础架构，并通过无服务器按请求付费定价降低成本。

## 可持续性
<a name="sustainability"></a>

本节介绍我们是如何使用[可持续性支柱](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/sustainability-pillar.html)的原则和最佳实践来设计此解决方案的。
+ 与持续运行本地服务相比，该解决方案使用托管无服务器服务来最大限度地减少后端服务对环境的影响。
+ 无服务器服务允许您根据需求扩展或缩减规模。