我收到 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 利用率很高,写入流量增加且缓存未命中率较高,则纵向扩展集群。有关更多信息,请参阅纵向扩展。