Hystrix (ヒューズ)
(a) ラップ要求: HystrixCommand (または HystrixObservableCommand) を使用して依存関係の呼び出しロジックをラップし、各コマンドは独立したスレッドで実行されます。 これは、デザイン パターンの「コマンド パターン」を使用します。
(b) トリップ メカニズム: サービスのエラー率が特定のしきい値を超えると、Hystrix は自動または手動でトリップし、サービスの要求を一定期間停止することができます。
(c) リソースの分離: Hystrix は、依存関係ごとに小さなスレッド プール (またはセマフォ) を維持します。 スレッド プールがいっぱいの場合、依存関係に送信された要求は、キューで待機する代わりにすぐに拒否されるため、障害の判定が高速化されます。
(d) 監視: Hystrix は、成功、失敗、タイムアウト、拒否された要求など、実行中のインジケーターと構成の変更をほぼリアルタイムで監視できます。
(e) フォールバック メカニズム: 要求が失敗した場合、タイムアウトした場合、拒否された場合、またはサーキット ブレーカーが開いた場合に、フォールバック ロジックを実行します。 フォールバック ロジックは、開発者が指定できます。
Last updated