此內容已過時。這個版本的 Well-Architected 框架現在可以在以下位置找到: https://docs.aws.amazon.com/zh_tw/wellarchitected/2022-03-31/framework/performance-efficiency.html

PERF 2: 您如何選擇運算解決方案?

工作負載的最佳運算解決方案會根據應用程式設計、使用模式和組態設定而有所不同。架構可針對不同元件使用不同運算解決方案並啟用不同功能,以提升效能。為架構選錯運算解決方案,可能使效能達成效率降低。

資源

Amazon EC2 foundations (CMP211-R2)
Powering next-gen Amazon EC2: Deep dive into the Nitro system
Deliver high performance ML inference with AWS Inferentia (CMP324-R1)
Optimize performance and cost for your AWS compute (CMP323-R1)
Better, faster, cheaper compute: Cost-optimizing Amazon EC2 (CMP202-R1)
Cloud Compute with AWS
EC2 Instance Types
Processor State Control for Your EC2 Instance
EKS Containers: EKS Worker Nodes
ECS Containers: Amazon ECS Container Instances
Functions: Lambda Function Configuration

最佳實務:

改進方案

評估可用的運算選項

  • 考量運算選項: 確定哪個運算選項符合您的需求。從效能的角度來看,執行個體可以用於長時間執行的應用程式,尤其是那些具有狀態和長時間執行的運算週期的應用程式;函數可用於需要快速回應時間的事件啟動無狀態應用程式;容器讓您可以高效地利用執行個體的資源。
    Cloud Compute with AWS
  • 定義運算效能需求: 確定工作負載重要的運算效能指標,並使用牽涉到基準化分析或負載測試的資料驅動方法,來實作您的要求。使用這些資料來確定您的運算解決方案受限的地方,並檢查可以改善此解決方案的組態選項。
  • 了解可用的運算組態選項

  • 了解可用的組態選項: 對於您選擇的運算選項,使用可用的組態選項針對效能需求進行優化。利用 AWS Nitro Systems,以充分利用主機硬體的運算和記憶體資源。使用專屬 Nitro 卡可達到高速聯網、高速 EBS 和 I/O 加速。
    AWS Nitro System
  • 收集與運算相關的指標

  • 收集與運算相關的指標: Amazon CloudWatch 可以收集環境中各種資源的指標。結合使用 CloudWatch 和其他指標記錄工具,來追蹤工作負載中的系統層級指標。記錄諸如 CPU 利用率水平、記憶體、磁碟 I/O 和網路之類的資料,以深入了解利用率水平或瓶頸。該資料對於了解工作負載的效能以及使用資源的效率至關重要。將這些指標納入資料驅動的方法,以主動調整和優化工作負載的資源。
    Amazon CloudWatch
  • 透過適當調整大小來確定所需的組態

  • 透過適當調整大小來修改工作負載組態: 若要同時最佳化效能和整體效率,請判斷工作負載所需的資源。對於比起 CPU 需要更多記憶體的系統,選擇記憶體優化的執行個體;或者為那些不耗用太多記憶體的資料處理元件,選擇運算優化的執行個體。適當調整大小可以讓您的工作負載在發揮出色效能的同時僅使用所需資源
  • 利用資源的可用彈性

  • 利用彈性: 彈性會比對您擁有的資源供應與這些資源的需求。執行個體、容器和函數提供了彈性機制,可能是與自動調整規模功能結合使用,或是作為服務功能提供。利用架構中的彈性,以確保您有足夠的容量滿足所有使用規模的效能需求。 確保針對要部署的工作負載類型來驗證擴展或縮減彈性資源的指標。如果您要部署影片轉碼應用程式,則預期為 100% CPU,且不應做為您的主要指標。或者,您可以針對等待擴展執行個體類型的轉碼任務的佇列深度,來進行測量。 確定針對要部署的工作負載類型驗證擴展或縮減彈性資源的指標。安全地縮減工作負載元件,與在必要時擴展資源一樣重要。建立縮減事件的測試案例,以確保工作負載如預期般運作。
  • 根據指標重新評估運算需求

  • 使用資料驅動的方法來優化資源: 為了獲得最佳效能和效率,使用從工作負載中收集一段時間的資料來調整和優化資源。查看工作負載中當前資源的使用趨勢,並確定可以在何處進行變更以更好地滿足工作負載的需求。當資源過量使用時,系統效能會降低,而利用率不足則會導致資源使用效率低下和成本增加。