

# PERF05-BP02 使用監控解決方案了解效能扮演關鍵作用的領域
<a name="perf_process_culture_use_monitoring_solutions"></a>

 了解並找出提高工作負載效能將對效率或客戶體驗產生正面影響的地方。例如，具有大量客戶互動的網站可受益於邊緣服務的使用，因為這樣可以將內容交付移至更接近客戶的地方。 

 **常見的反模式：** 
+  您假設標準運算指標 (例如 CPU 使用率或記憶體壓力) 足以找出效能問題。 
+  您只會使用所選監控軟體記錄的預設指標。 
+  您只會在有問題時審查指標。 

 **建立此最佳實務的優勢：** 了解效能的關鍵領域，有助於工作負載擁有者監控 KPI 和優先處理具有高影響力的待改善之處。 

 **若未建立此最佳實務，暴露的風險等級：** 高 

## 實作指引
<a name="implementation-guidance"></a>

 設置端到端追蹤，以找出流量模式、延遲和關鍵的效能區域。監控資料存取模式是否有緩慢查詢或分段和分區不佳的資料。使用負載測試或監控來找出工作負載受限面向。 

 透過了解架構、流量模式和資料存取模式，來提高效能效率，並確定延遲和處理時間。找出隨著工作負載的成長，可能會影響客戶體驗的潛在瓶頸。當您已調查這些面向時，請審視自己可以部署哪個解決方案，來消除這些效能疑慮。 

### 實作步驟
<a name="implementation-steps"></a>

1.  設置端到端監控，來擷取所有工作負載組成部分和指標。以下是 AWS 上的監控解決方案的範例。     
[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/wellarchitected/2023-10-03/framework/perf_process_culture_use_monitoring_solutions.html)

1.  執行測試，來產生指標、確定流量模式、瓶頸和關鍵效能區域。以下是如何執行測試的幾個範例： 
   +  設定 [CloudWatch Synthetic Canaries](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 以程式設計方式使用 Linux Cron 任務或評分運算式，模擬以瀏覽器為基礎的使用者活動，以產生長期一致的指標。 
   +  使用 [AWS 分散式負載測試](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 解決方案，來產生尖峰流量或以預期成長速率測試工作負載。 

1.  評估指標和遙測，來找出關鍵的效能領域。與團隊檢視這些領域，討論監控和解決方案，來避免瓶頸。 

1.  進行效能改善的實驗，並透過資料來衡量這些變更。例如，您可以使用 [CloudWatch Evidently](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently.html) 測試對工作負載的新改進和效能影響。 

## 資源
<a name="resources"></a>

 **相關文件：** 
+  [Amazon 建置者資料中心](https://aws.amazon.com/builders-library) 
+  [X-Ray 文件](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Amazon DevOps Guru](https://aws.amazon.com/devops-guru/) 

 **相關影片：** 
+  [Amazon 建置者資料中心：25 年 Amazon 卓越營運](https://www.youtube.com/watch?v=DSRhgBd_gtw) 
+  [使用 Amazon CloudWatch Synthetics 進行應用程式的視覺監控](https://www.youtube.com/watch?v=_PCs-ucZz7E) 

 **相關範例：** 
+  [使用 Amazon CloudWatch Synthetics 測量頁面載入時間](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Amazon CloudWatch RUM Web 用戶端](https://github.com/aws-observability/aws-rum-web) 
+  [X-Ray SDK for Node.js](https://github.com/aws/aws-xray-sdk-node) 
+  [X-Ray SDK for Python](https://github.com/aws/aws-xray-sdk-python) 
+  [X-Ray SDK for Java](https://github.com/aws/aws-xray-sdk-java) 
+  [X-Ray SDK for .Net](https://github.com/aws/aws-xray-sdk-dotnet) 
+  [X-Ray SDK for Ruby](https://github.com/aws/aws-xray-sdk-ruby) 
+  [X-Ray 常駐程式](https://github.com/aws/aws-xray-daemon) 
+  [AWS 上的分散式負載測試](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 