DescribeMetricLastまたはDescribeMetricList操作を呼び出した後に、[Throttling.User] または [ユーザーフロー制御のためにリクエストが拒否されました] メッセージが返された場合、送信できるAPIリクエストは抑制されます。 このトピックでは、APIスロットリングの原因と解決策について説明します。
原因
DescribeMetricLastおよびDescribeMetricList操作の1秒あたりの最大クエリ数 (QPS) は50です。 QPSが50を超えると、送信できるAPIリクエストが抑制されます。
ピークQPSの照会
APIレート制限を照会する方法については、Quota CenterコンソールのAPIレート制限ページをご覧ください。
[APIレート制限] ページで、DescribeMetricLastおよびDescribeMetricList操作のAPIレート制限とピークQPSを表示できます。
APIレート制限の使用量を照会し、ピーク使用量を計算する方法については、CloudMonitorコンソールのOpenApiページをご覧ください。
QuotaUsage(%) チャートで、ピーク使用量を見つけ、ピークQPSを計算します。 APIレート制限が50で、ピーク使用量が5% であるとします。 ピークQPSは、以下の式に基づいて計算される: 50 × 0.05 = 2.5。
解決策
一度に複数のメトリクスを照会します。
50個のElastic Compute Service (ECS) インスタンスのメトリックをクエリするとします。 リクエストパラメーター
Dimensionsを[{"instanceId":"Instance A" },{ "instanceId":"Instance B"}]に設定することを推奨します。説明1回のリクエストで最大50個のインスタンスをクエリできます。
ピークQPSを減らすために、API操作を平均的に呼び出すことができます。
10秒ごとに10のクラウドサービスのメトリックをクエリするとします。 各サービスには10個のメトリックがあります。 すべてのメトリクスが同時に照会される場合、QPSは100です。 メトリックが10秒以内に平均的にクエリされる場合、QPSは10になります。
リアルタイムモニタリングデータをエクスポートする場合は、BatchExport操作を呼び出すことを推奨します。
BatchExport操作は、低コスト、低レイテンシ、および高信頼性を提供します。 QPSは1,000である。
問題が解決しない場合は、 CloudMonitorにチケットを起票してください。