public class ExponentialRandomBackOffPolicy extends ExponentialBackOffPolicy
ExponentialBackOffPolicy
の実装。ランダムな倍数は 1 と決定論的乗数の間で均一に分布します (したがって、実際には、決定論的ケースでは間隔は次の間隔と次の 1 つ前の間隔の間のどこかになります)。これは、テストで多くの再試行が必要になることで過度の競合が発生するテストシナリオでは少なくとも有用であることがわかっています。テストでは、通常、スレッドは同時に開始されるため、次の間隔に一緒に踏み込みます。この BackOffPolicy
を使用すると、そのシナリオを回避できます。例: initialInterval = 50 乗数 = 2.0 maxInterval = 3000 numRetries = 5 ExponentialBackOffPolicy
の結果: [50, 100, 200, 400, 800] ExponentialRandomBackOffPolicy
の結果は [76, 151, 304, 580, 901] または [53, 190, 267, 451, 815] になる可能性があります。DEFAULT_INITIAL_INTERVAL, DEFAULT_MAX_INTERVAL, DEFAULT_MULTIPLIER, logger
コンストラクターと説明 |
---|
ExponentialRandomBackOffPolicy() |
修飾子と型 | メソッドと説明 |
---|---|
protected ExponentialBackOffPolicy | newInstance() |
BackOffContext | start(RetryContext context) このポリシー設定でシードされた BackOffContext の新しいインスタンスを返します。 |
backOff, cloneValues, getInitialInterval, getMaxInterval, getMultiplier, setInitialInterval, setMaxInterval, setMultiplier, setSleeper, toString, withSleeper
clone (標準 Javadoc) (英語) , equals (標準 Javadoc) (英語) , finalize (標準 Javadoc) (英語) , getClass (標準 Javadoc) (英語) , hashCode (標準 Javadoc) (英語) , notify (標準 Javadoc) (英語) , notifyAll (標準 Javadoc) (英語) , wait (標準 Javadoc) (英語) , wait (標準 Javadoc) (英語) , wait (標準 Javadoc) (英語)
public BackOffContext start(RetryContext context)
BackOffContext
の新しいインスタンスを返します。BackOffPolicy
の start
ExponentialBackOffPolicy
の start
context
- RetryContext
コンテキストには、今後の進め方を決定するために使用できる情報が含まれている可能性があります。BackOffContext
または 'null
'。protected ExponentialBackOffPolicy newInstance()
ExponentialBackOffPolicy
の newInstance
Copyright © 2018 SpringSource (英語) . All rights reserved.