サーキットブレーカパターン
Circuit Breaker Pattern
さーきっとぶれーかぱたーん
マイクロサービス間の呼び出しで障害が連鎖(カスケード障害)するのを防ぐパターン。一定回数の障害を検知すると回路を「開」にして呼び出しを遮断し、一定時間後に「半開」状態で回復を試みる。
システムアーキテクチャ > 高信頼化設計
関連キーワードの用語
SA可用性
システムが必要なときに利用可能な状態にある度合い。稼働率で定量化され、99.99%(フォーナイン)のように表現する。冗長化、フェールオーバー、計画的保守などにより向上させる。
SAウォッチドッグタイマ
システムの暴走を検知するためのハードウェアタイマ。正常動作中はソフトウェアが定期的にタイマをリセットし、リセットが行われない場合(暴走時)にシステムを再起動する。組込みシステムの信頼性確保に不可欠。
SAAPIゲートウェイ
マイクロサービスアーキテクチャにおいて、クライアントからのリクエストを適切なバックエンドサービスにルーティングする入口。認証、レート制限、ロギング、プロトコル変換などの横断的関心事を一元的に処理する。
SASagaパターン
マイクロサービス間にまたがるトランザクションを、一連のローカルトランザクションとそれぞれの補償トランザクションで管理するパターン。コレオグラフィ方式(イベント駆動)とオーケストレーション方式がある。分散トランザクションの代替手法。
SA冗長化
システムの構成要素を多重化し、一部に障害が発生しても全体として機能を継続できるようにする設計手法。サーバ、ネットワーク、ストレージ、電源などを二重化・多重化する。高可用性システムの基本技術。
SAフェールセーフ
システムに障害が発生した場合に、安全な状態に移行する設計思想。故障時に危険な動作を回避することを優先する。信号機が故障時に赤信号になる設計などが例。フェールソフトとは異なる概念。