

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS Well-Architected 設計考量事項
<a name="aws-well-architected-design-considerations"></a>

此解決方案使用 [AWS Well-Architected Framework](https://aws.amazon.com/architecture/well-architected/) 的最佳實務，協助客戶在雲端設計和操作可靠、安全、有效率且符合成本效益的工作負載。

本節說明 Well-Architected Framework 的設計原則和最佳實務如何讓此解決方案受益。

## 卓越營運
<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 Access Management](https://aws.amazon.com/iam/) (IAM) 角色，只包含所需的最低許可。
+ 所有資料儲存，包括 S3 儲存貯體和 DynamoDB 資料表，都會使用 AWS 受管金鑰加密靜態資料。
+ 在適用於稽核和合規目的的情況下，會啟用記錄、追蹤和版本控制。
+ 根據預設，網路存取是私有的，並在可用的情況下啟用 VPC 端點，以將流量保留在 AWS 網路中。

**注意**  
解決方案會根據日誌磁碟區和成本考量，建立具有不同保留期的多個 CloudWatch 日誌群組：  


| 日誌類型 | 保留期間 | 
| --- | --- | 
| ECS 容器洞察 | 1 天 | 
| Step Functions、ECS 自訂日誌、API Gateway 存取日誌 | 1 年 | 
| Lambda 執行期日誌 | 2 年 | 
| API Gateway 執行日誌 | 永不過期 | 
您可以在 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、Amazon DynamoDB、Amazon 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 可讓您僅支付所使用的運算資源，無需預付費用。
+ AWS AgentCore Gateway 做為分散式負載測試 API 的成本效益 Lambda 型代理，無需專用基礎設施，並透過無伺服器pay-per-request定價降低成本。

## 永續性
<a name="sustainability"></a>

本節說明如何使用[永續性支柱](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/sustainability-pillar.html)的原則和最佳實務來建構此解決方案。
+ 相較於持續操作內部部署服務，解決方案使用受管無伺服器服務，將後端服務對環境的影響降至最低。
+ 無伺服器服務可讓您視需要擴展或縮減規模。