分散システムでは、すべてはやがて失敗します。レジリエンスパターンは、単一の障害がシステム全体の停止に広がるのを防ぎます。
コアパターン
- Timeout — レスポンスを永遠に待たないこと。
- Retry — 一時的な障害に対してリトライを行い、バックオフ + ジッターを使用する。
- Circuit breaker — 障害が発生しているサービスの呼び出しを停止して、回復させる。
- Bulkhead — リソースを分離して、1つの遅いサービスが他全体に影響しないようにする。
サーキットブレーカーの例
js
