リトライ・ポリシー
リトライ・ポリシーにより、DataStaxドライバーは特定のタイプのサーバー・エラーが発生したときに、要求を自動的に再試行できます。
各DataStaxドライバーは、デフォルトのリトライ・ポリシーを実装しています。
C/C++ | C# | Java | Node.js | PHP | Python | Ruby |
ドライバーに含まれているリトライ・ポリシーに加えて、一部のドライバーでは、リトライ・ポリシー拡張を使用して、読み取りタイムアウト、書き込みタイムアウト、利用できない例外、要求エラーに基づいたカスタム動作を実装できます。
デフォルトのリトライ・ポリシー
デフォルトのリトライ・ポリシーは、元の要求の整合性レベルを維持しながら安全に実行できる場合、要求を再試行します。ほとんどのデプロイで、このポリシーを使用してください。
読み取りタイムアウト
応答するレプリカの数が整合性レベルごとに必要な応答の数以上である場合、デフォルトのリトライ・ポリシーは要求を再試行します。それ以外の場合は、すべてエラーを返します。
書き込みタイムアウト
要求が、ログに記録されるバッチ要求であり、バッチ・ログへの書き込みに失敗した場合、デフォルトのリトライ・ポリシーは要求を再試行します。それ以外の場合は、すべてエラーを返します。
無視リトライ・ポリシー
無視リトライ・ポリシーは、要求が失敗しても再試行せずに、無視します。無視リトライ・ポリシーは、すべての場合にエラーを返します。このポリシーは、要求の再試行を処理する独自のビジネス・ロジックを実装する必要があるアプリケーションに使用します。
ロギング・リトライ・ポリシー
ロギング・リトライ・ポリシーは、別のリトライ・ポリシー実装の親ポリシーになることを目的としており、その子ポリシーによって行われたリトライ決定のみをログに記録します。このポリシーは通常、ドライバーのリトライ動作をデバッグするために使用されます。