> 業界の洞察 >サーボ
テクニカルサポート

製品サポート

マイクロサービスのサーキット ブレーカーのプロパティ

発行済み 2026-01-19

マイクロサービスがトリップしたとき: サーキットブレーカーで照明をオンにし続ける

この美しいマイクロサービス アーキテクチャを構築しました。すべてが順調に進んでいますが、そうでなくなるまでは。 1 つのサービス (おそらく支払い検証機能や通知送信者のような小規模なもの) が、昼寝をすることにしました。長い昼寝。突然、軽快なユーザー インターフェイスがタイムアウトになり、注文が滞り、回転するローディング ホイールがアプリ内で最も嫌われるグラフィックになります。まるで電球が切れて建物全体が暗闇に落ちたような気分です。 1 つの障害がシステム全体の問題に連鎖するのはなぜでしょうか?

それは連鎖反応です。サービス A がサービス B を呼び出します。サービス B は、圧倒されているかバグを感じているため、応答が遅くなるか応答を停止します。軍務 A は優秀な兵士なので、待ちます...そして待ちます...そして待ちます。スレッドや接続などの貴重なリソースを保持し、応答を期待します。その間、リクエストのキューは後退します。気づかないうちに、サービス B の速度低下によりサービス A が停止し、サービス A を呼び出す他のものも失敗し始めます。ダッシュボードはクリスマス ツリーのように点灯しますが、良い意味ではありません。

それで、修正は何でしょうか?失敗を防ぐことだけはできません。分散型の世界では、それらは避けられません。重要なのは、完璧なシステムを構築することではありません。それは、優雅につまずく方法を知っている、回復力のある人間を構築することです。ここで回路ブレーカーのアイデアが登場します。これは電気工学というよりも、むしろ常識に関するものです。

このように考えてください。古いヒューズボックスを覚えていますか?回路が過負荷になるとヒューズが切れます。電力を遮断し、ワイヤーの過熱や火災の発生を防ぎます。家全体を守るための犠牲劇だ。ソフトウェアのサーキットブレーカーも同じ働きをします。サービスの合間に座って会話を監視します。

サービス B が不正な動作を開始すると (タイムアウトが頻繁に発生したり、エラーがスローされたり)、サーキット ブレーカーが「作動」します。問題が発生したサービスへのリクエストの送信をしばらく停止します。サービス A をハングさせて問題を起こさせる代わりに、ブレーカーはすぐにフォールバックを返します。おそらく、キャッシュされた応答、デフォルトのメッセージ、または丁寧な「後でもう一度試してください」などです。これにより、サービス A とアプリケーションの残りの部分の応答性を維持しながら、サービス B が回復する (またはチームがサービスを再起動する) ための余裕が生まれます。ユーザーには機能がわずかに低下しているように見えるかもしれませんが、完全なクラッシュは見られません。それは、「サービスが一時的に利用できません」という通知と、空白のイライラするエラー画面の違いです。

しかし、すべてのブレーカーが同じように作られているわけではありません。優れた人は実際に何をすべきなのか疑問に思うかもしれません。

まず、いつトリップするかを賢く考える必要があります。単にエラーを数えるだけではありません。それはパターンを見ているのです。最後の 1 分間のリクエストの 50% は失敗していますか?旅行。平均応答時間が突然 10 倍になったのでしょうか?おそらくその回路を開く時が来たのでしょう。どの程度の感度にするかを決定できるように、構成可能なしきい値が必要です。

次に、回復リズムが必要です。トリップした後は、永遠に開いたままにするべきではありません。ダウンストリーム サービスが正常に戻っているかどうかを確認するには、「ヘルス チェック」呼び出しを通じて単一のテスト リクエストを定期的に許可する必要があります。このテストが成功すると、慎重に回線を閉じ、トラフィックが再び流れるようにします。このプローブは、手動介入なしで自動回復するための鍵となります。

第三に、既存のセットアップとうまく調和するはずです。個別に配線する必要があるかさばるアプライアンスではありません。最良の実装は、サービス通信の自然な層のように感じられ、アプリケーション ロジックを書き直さずに構成できるものです。

このパターンを実装することは、システムに免疫システムを与えるようなものです。寒さを止めることはできませんが、それを封じ込めます。まず、サービス間の重要なリンク、つまり障害が発生すると最も大きな損害が生じるリンクを特定することから始めます。これらの呼び出しをサーキット ブレーカー ロジックでラップします。フォールバックを決定します。不完全であるとしても、ユーザーに表示する許容可能な応答は何でしょうか?次に、設定を調整します。失敗が多すぎるとは何回ですか?ブレーカーはどのくらいの時間開いたままにしておく必要がありますか?実際のトラフィックに基づいてこれらを調整すると、それが運用プレイブックの一部になります。

美しさは結果にあります。システムはある種の堅牢性を獲得します。データベースに障害が発生したり、サードパーティの API が停止したりしても、午前 2 時に全員が総力を挙げて慌てて対処する緊急事態を意味するものではなくなりました。システムは問題を切り分け、損傷を封じ込め、コア機能を維持します。ユーザーは信頼性を獲得し、運用チームは健全性を獲得し、ビジネスは信頼を損なう醜いダウンタイムのエピソードを回避します。

キロパワーのこのパターンに対するアプローチは、それを簡単かつ運用可能にすることに重点を置いています。目標は、回復力をアーキテクチャに組み込んで、安定性が銃撃戦ではなくデフォルトの機能になるようにすることです。それは、予期せぬ事態を予期し、他の全員がスムーズなエクスペリエンスを楽しんでいる間、バックグラウンドで静かにそれに対処する計画を立てたシステムを設計することです。なぜなら、結局のところ、最高のテクノロジーとは、考える必要がなく、たとえいくつかの小さな部分が中断されたとしても、そのまま機能するものだからです。

2005年に設立され、キロパワーは、中国広東省東莞に本社を置く、コンパクトモーションユニットの専門メーカーです。モジュラードライブテクノロジーのイノベーションを活用し、キロパワー高性能モーター、高精度減速機、マルチプロトコル制御システムを統合し、効率的でカスタマイズされたスマート ドライブ システム ソリューションを提供します。 Kpower は、スマート ホーム システム、自動エレクトロニクス、ロボティクス、精密農業、ドローン、産業オートメーションなどのさまざまな分野をカバーする製品で、世界中の 500 を超える企業クライアントにプロフェッショナルなドライブ システム ソリューションを提供してきました。

更新時間:2026-01-19

未来に力を与える

お客様の製品に適したモーターまたはギアボックスを推奨するには、Kpower の製品スペシャリストにお問い合わせください。

Kpowerにメールする
お問い合わせを送信
+86 0769 8399 3238
 
kpowerMap