「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
詳細 †
以下のようなポリシーを組み合わせて実装できる。
Retry †
Circuit Breaker †
設定で指定した回数のエラーが連続して発生した場合、Exceptionを返す。
Timeout †
指定した時間が経過しても処理が終わらない場合、Exceptionを返す。
- 悲観的タイムアウト
- 通常のタイムアウト
- クライアント側なので処理を抜けるだけになる。
- 楽観的タイムアウト
- 悲観的タイムアウトでは、処理を抜けるだけになるが、
- 楽観的タイムアウトでは、CancellationToken?によるキャンセル処理を実装できる。
Bulkhead Isolation †
- 並列に実行可能なリクエスト数を制限する。
- コンシューマーバルクヘッドとも呼ぶ。
- セマフォを使って 同時実行可能数を制限している。
Fallback †
エラーが発生した場合に、最終的に返したい値は Fallback を使って指定する。
Cache †
Cacheを、他の Policy と組み合わせて柔軟に処理に組み込める。
PolicyWrap? †
上記(Retry, Circuit Breaker, Timeout, Bulkhead, Fallback)を組み合わせる。
参考 †
Qiita †
Microsoft Docs †
Tags: :通信技術, :.NET開発, :ASP.NET