アノテーションインターフェース BackOff
RetryPolicy の一部として BackOff インスタンスを作成するためのメタデータを収集します。値はそのまま指定することも、より多くの形式と式の評価をサポートする *String 相当の値を使用して指定することもできます。使用可能な属性は次のとおりです。
- 明示的な設定がない場合、デフォルトは
FixedBackOffで遅延は 1000L ミリ秒です。 delay()のみ設定: その値で固定遅延バックオフ- それ以外の場合、
ExponentialBackOffはdelay()(デフォルト: 1000L ms)、maxDelay()(デフォルト: 最大値なし)、multiplier()(デフォルト: 1.0)、およびjitter()(デフォルト: ジッターなし) の値で作成されます。
- 導入:
- 4.0
- 作成者:
- Dave Syer, Gary Russell, Aftab Shaikh, Stephane Nicoll
フィールド概要
フィールドオプション要素の概要
オプション要素修飾子と型オプションの要素説明long最初の呼び出し後の基本遅延を指定します。文字列形式を使用して、最初の呼び出し後の基本遅延を指定します。long文字列形式を使用して、基本再試行のジッター値を指定します。long文字列形式を使用して、再試行の最大遅延を指定します。double文字列形式を使用して、次回の再試行までの遅延の乗数を指定します。longdelay()のエイリアス。
フィールドの詳細
DEFAULT_DELAY
要素の詳細
value
delay
最初の呼び出し後の基本遅延を指定します。delayのみを指定した場合、その値を間隔として持つFixedBackOffが構成されます。乗数を指定した場合、これが乗算する初期遅延として機能します。
デフォルトは 1000L ミリ秒です。
- 戻り値:
- ミリ秒単位のベース遅延 (デフォルトの 1000L )
- デフォルト:
1000L
delayString
StringSE delayString初期呼び出し後の基本遅延を文字列形式で指定します。これを指定すると、delay()よりも優先されます。遅延文字列にはいくつかの形式があります。
- 単純な long 型で、ミリ秒単位の期間を表すと解釈されます。
- 既知の
DurationFormat.Styleのいずれか:ISO8601スタイルまたはSIMPLEスタイル - 文字列に明示的な単位が含まれていない場合は、ミリ秒をフォールバックとして使用します - 環境から
example.propertyを使用するための${example.property}や#{example.property}などの正規表現
- 戻り値:
- 文字列値としての遅延(プレースホルダなど)
- 関連事項:
- デフォルト:
""
maxDelay
long maxDelay再試行の最大遅延を指定し、ジッターと乗数によって遅延が増加する範囲を制限します。delay()のみが設定されている場合は無視されます。それ以外の場合は、指定された最大遅延のExponentialBackOffまたは設定されていない場合は無制限の遅延になります。- 戻り値:
- 最大遅延
- デフォルト:
0L
maxDelayString
StringSE maxDelayString再試行の最大遅延時間を文字列形式で指定します。この値を指定した場合、maxDelay()よりも優先されます。最大遅延文字列はいくつかの形式で表すことができます。
- 単純な long 型で、ミリ秒単位の期間を表すと解釈されます。
- 既知の
DurationFormat.Styleのいずれか:ISO8601スタイルまたはSIMPLEスタイル - 文字列に明示的な単位が含まれていない場合は、ミリ秒をフォールバックとして使用します - 環境から
example.propertyを使用するための${example.property}や#{example.property}などの正規表現
- 戻り値:
- 最大遅延を文字列値で指定します(例: プレースホルダ)
- 関連事項:
- デフォルト:
""
multiplier
double multiplier次回の再試行の遅延の乗数を指定します。この乗数は、初期遅延から始まり、各試行に適用されるジッターに、前回の遅延に適用されます。delay()のみが設定されている場合は無視され、それ以外の場合は指定された乗数を持つExponentialBackOffまたは設定されていない場合は1.0になります。- 戻り値:
- 各試行ごとに現在の間隔に掛ける値
- デフォルト:
0.0
multiplierString
StringSE multiplierString次回の再試行までの遅延時間を文字列形式で指定します。この値を指定した場合、multiplier()よりも優先されます。乗数文字列にはいくつかの形式があります。
- プレーンダブル
- 環境から
example.propertyを使用するための${example.property}や#{example.property}などの正規表現
- 戻り値:
- 各試行ごとに現在の間隔に掛ける値(プレースホルダなど)
- 関連事項:
- デフォルト:
""
jitter
long jitter計算された遅延に対してランダムに減算または加算される基本再試行のジッター値を指定します。結果はdelay - jitterとdelay + jitterの間の値になりますが、基本遅延を下回ったり最大遅延を超えたりすることはありません。乗数を指定した場合、ジッター値にも適用されます。
delay()のみが設定されている場合は無視され、それ以外の場合は指定されたジッタを持つExponentialBackOffまたは設定されていない場合はジッタなしになります。- 戻り値:
- ジッター値(ミリ秒)
- 関連事項:
- デフォルト:
0L
jitterString
StringSE jitterString基本再試行のジッター値を文字列形式で指定します。これを指定すると、jitter()よりも優先されます。ジッタ文字列にはいくつかの形式があります。
- 単純な long 型で、ミリ秒単位の期間を表すと解釈されます。
- 既知の
DurationFormat.Styleのいずれか:ISO8601スタイルまたはSIMPLEスタイル - 文字列に明示的な単位が含まれていない場合は、ミリ秒をフォールバックとして使用します - 環境から
example.propertyを使用するための${example.property}や#{example.property}などの正規表現
- 戻り値:
- ジッタを文字列値として表す(たとえばプレースホルダ)
- 関連事項:
- デフォルト:
""