我在 Amazon DynamoDB Accelerator (DAX) 作業中收到 "ThrottlingException"。這是什麼意思,我該如何進行疑難排解?
簡短說明
DAX 會監控其叢集的 CPU 使用率。當 CPU 使用率過高時,DAX 會調節請求。因此,ThrottlingException 會限制 DAX 接受讀取或寫入作業請求的速率。
如要降低 DAX 限流您作業的機會,請依循下方的最佳實務來降低您的 CPU 使用率。
解決方式
在 Amazon CloudWatch 中使用下列指標來追蹤 DAX 的 CPU 使用率並防止限流:
- 監控 ThrottledRequestCount 指標,以識別 DAX 的調節請求計數。
- 使用 CPUUtilization 指標,可識別節點或叢集的 CPU 使用率百分比。
- 使用 TotalRequestCount 來識別叢集所處理的請求數目是否增加。
- 使用作業特定的指標 (例如 GetItemRequestCount、PutItemRequestCount、QueryRequestCount 或 ScanRequestCount),來識別任何作業請求中的尖峰值。
- 使用 ItemCacheMisses、QueryCacheMisses,或 ScanCacheMisses 來識別快取失敗中的增加。
如需您可使用指標的詳細資訊,請參閱 DAX 指標。
若 CPU 使用率一直很高,且叢集的讀取或寫入流量增加,則會橫向或縱向擴展叢集:
- 若 CPU 使用率很高,且快取失敗較低的讀取流量增加,則會橫向擴展叢集。如需詳細資訊,請參閱水平擴展。
- 若 CPU 使用率很高,且快取失敗高的寫入流量增加,則會縱向擴展叢集。如需詳細資訊,請參閱垂直擴展。