AWS SDK for Ruby での再試行の設定 - AWS SDK for Ruby

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SDK for Ruby での再試行の設定

AWS SDK for Ruby は、サービスリクエストのデフォルトの再試行動作とカスタマイズ可能な設定オプションを提供します。を呼び出すと、予期しない例外が返される AWS のサービス ことがあります。呼び出しを再試行すると、スロットリングや一時的なエラーなど、特定のタイプのエラーが成功する可能性があります。

再試行動作は、共有 AWS configファイルの環境変数または設定を使用してグローバルに設定できます。このアプローチの詳細については、 SDK およびツールリファレンスガイドの「再試行動作」を参照してください。 AWS SDKs また、再試行戦略の実装に関する詳細情報と、互いに選択する方法も含まれています。

または、以下のセクションに示すように、これらのオプションをコードで設定することもできます。

コードでのクライアントの再試行動作の指定

デフォルトでは、 AWS SDK for Ruby は最大 3 回の再試行を実行し、再試行の間隔は 15 秒、合計で最大 4 回の再試行を実行します。したがって、オペレーションがタイムアウトするまでに最大 60 秒かかることがあります。

以下の例では、us-west-2 リージョンで Amazon S3 クライアントを作成し、クライアントオペレーションの再試行間隔を 5 秒、最大再試行回数を 2 回に設定しています。したがって、Amazon S3 クライアントオペレーションがタイムアウトするまでに最大 15 秒かかることがあります。

s3 = Aws::S3::Client.new( region: region, retry_limit: 2, retry_backoff: lambda { |c| sleep(5) } )

コードまたはサービスクライアント自体に設定された明示的な設定セットは、環境変数や共有 config ファイルに設定された設定より優先します。