2

.createDocument()コレクションに 200 未満のドキュメントを挿入するために呼び出すと、次のエラーが発生します。これは通常、150 回目の呼び出しのあたりで発生し始めます。Node.js SDK を使用しています。これが発生した場合、データベースで実行されている他の操作はありません。

{ code: 429, body: '{"code":"429","message":"Exception: Microsoft.Azure.Documents.RequestRateTooLargeException, message: {\"Errors\":[\"Request rate is large\" ]}、リクエスト URI: rntbd://10.100.136.85:14900/apps/1240113d-9858-49b9-90cb-1219f9e1df77/services/itsupportrequests-ServerService-1/partitions/d7253667-671b-4f4e-ac84-a13b7d3db/replicasf5a/ 130701880511768464p\r\nActivityId: 5726e6b5-7955-4b39-b306-4903b9f69b36"}' }

4

1 に答える 1

4

これは、アクセス率が許可されたクォータを超えた場合に発生します。DocumentDB には、コレクションごとに 1 秒あたり最大 2,000 の要求ユニットがあります。挿入物には料金がかかります (ドキュメントのサイズと索引付けされた用語の数に基づきます)。挿入のコストが 20 リクエスト ユニットの場合、1 秒あたり 100 回の挿入を実行できます。読み取りに 2 リクエスト ユニットのコストがかかる場合、1 秒あたり 1,000 を実行できます。

これを超えると、このエラーが発生します。

これを回避する方法は、アプリケーションを複数のコレクションにスケールアウトし、各コレクションが 1 秒あたり最大 2,000 リクエスト ユニットを取得するようにすることです。

この例外を受け取ると、操作を再試行するまでの待機時間を示す HTTP ヘッダーも受け取ります。この待機期間を尊重して、操作を再試行してください。

于 2015-03-10T17:25:01.960 に答える