問題タブ [retrypolicy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
circuit-breaker - Polly Circuit Breaker / ネットワーク停止後にクエリを自動的に再開するための再試行
.NET フレームワーク 4.5.2 で Polly を介してサーキット ブレーカーと再試行パターンを実装しています。
私の理解が正しいかどうかを確認したい。
質問 1: ネットワークが停止し、サーキット ブレーカーが exceptionsAllowedBeforeBreaking の数に達し、オープン状態になり、durationOfBreak 期間待機した場合、サーキットは新しいリクエストに対してオープンになりますが、送信されたリクエストは例外をスローしますか?
質問 2: サーキット ブレーカーが例外をスローするのではなく、例外があったリクエストを再試行することが目的の動作である場合は、サーキット ブレーカー ポリシーに加えて再試行ポリシーを実装する必要があります。これについての私の理解では、質問 1 の動作が発生し、その後再試行が試行されるということです。
A. ネットワークが停止したり、サービスがダウンしたりして、ネットワークが復旧したり、サービスが再開したりした直後に要求を再試行することが望ましい動作である場合は、RetryForever を実行する必要があります。これを行うより良い方法はありますか?事実上、多くのブロッキングが発生しますよね?
コードに関しては、私のポリシーは現在次のように定義されています。
私の呼び出しコードは次のように行われます:
サーキット ブレーカーですべての再試行を実行するのに必要な時間を過ぎてネットワークを切断すると、CancellationToken がキャンセルに設定され、その時点ですべての要求が失敗することがわかりました。それが起こる前にネットワークが復元された場合、リクエストは再試行されます。
java - Failsafe RetryPolicy - supplyAsync から例外をスローする
再試行ポリシーを実装しています。基本的に私がやりたいことは、別のスレッドで POST リクエストを再試行することです。jhalterman によるフェイルセーフを使用しています ( https://github.com/jhalterman/failsafe#asynchronous-api-integration ) これが私のコードです
ここで IOException をキャッチしたくありません。これは、再試行ポリシーによって処理されます。ここで例外をキャッチしているため、現在再試行は行われません。再試行ポリシーによって処理されるように、「supplyAsync」から例外をスローする方法はありますか? ありがとう。ありがとう
php - Aws SnsClient で再試行の例外をログに記録する
pub/sub には AWS Sns クライアントを使用しています。SnsClient の作成中に、reties を使用して最大再試行回数を定義できることがわかりました。例えば、
何らかの再試行が使用されている場合、例外をログに記録する方法はありますか? 上記のコードを使用して再試行ポリシーを制御したいということです。
azure - 再試行リクエストは「コンテンツの長さが一致しません」で終了します
私の問題は次のようになります。
私は Azure APIM を持っています。API を作成し、以下のようにバックエンドの再試行ポリシーを追加しました。
サーバーは初めて成功(statuscode: 200)を返し、再試行を開始すると、次のエラーが発生しました(再試行が正常に機能していることをテストするために、成功時にも再試行しています。 )。
同じことについてのあなたの考え/経験を助けてください。
c# - 単体テストでSQL再試行ポリシーを無視するには?
クラスと呼ばれるGitHub の Microsoft による Code sampleSqlServerRetryingExecutionStrategy
から継承しましたMySQLServerRetryPolicy
ShouldRetryOn
のオーバーライドされたメソッドにキャンセルトークンを追加したMySQLServerRetryPolicy
ので、Ctrl+C を押して NET.Core コンソールを強制終了できました。以下にコード スニペットを示します。
使用方法は次のMySQLServerRetryPolicy
とおりです。
builder
上記の変数は の型ですDbContextOptionsBuilder
。
ただし、単体テストでは、SQl 再試行ポリシーが永久に実行されているかどうかを示す出力はありません。
質問: 単体テストで SQL 再試行ポリシーを無視またはスキップするにはどうすればよいですか?