サービスのヒューズ(Hystrix、タービン)

1.雪崩

基本的なサービスの障害は、カスケード故障につながり、システム全体を引き起こす可能性があります一度マイクロサービスアーキテクチャでは、多くのサービスは、多くの場合、複数のサービス・コール・レベルを伴うことは現象がアバランシェ効果サービスと呼ばれ、使用できません。サービスなだれ効果「サービスプロバイダ」の結果は、「消費者に仕える」につながるが利用できないと、この段階的な増幅プロセス使用できなくなります利用できません。
例えば、あるシステムでは、Aは、サービス・プロバイダである:サービスとB A消費者、C及びDとBは、サービスコンシューマです。Aはこの時点で失敗した場合は、Bが利用できない原因となりますし、使用できなくB CとDにターンリードでアバランシェ効果が形成されたときに雪だるまが徐々に拡大されたときに、これは利用できない、利用できません。

2.ヒューズ(CircuitBreaker)

ヒューズ原理は、電力過負荷保護として、非常に簡単です。時間をかけて多くの同様のエラーを検出した場合に失敗迅速に実装することができ、それを実行しようと絶えずアプリケーションを防ぐために、失敗した後、より迅速に、もはやアクセスリモートサーバーを呼び出すしないように強制されます失敗する可能性があります操作プログラムは、エラー訂正を待たずに続けて、またはCPU時間の無駄がタイムアウトのために長い待ち時間を生成するようにします。ヒューズはまた、すでに再度操作を呼び出すアプリケーションの試みを補正された場合、エラーが、修正されたかどうかを診断するためのアプリケーションを有効にすることができます。プロキシエラーが発生しやすい操作のものを一種のようなヒューズパターン。このエージェントは、オペレータが継続使用を許可することを決めた、またはエラーがすぐに返され、その後、最近のコールが発生したエラーの数を記録することができます。ヒューズは、防衛の高可用性保護サービス、最後の行です。

3.Hystrixプロパティ

3.1ブレーカーのメカニズム

回路遮断器は、よくバックエンドサービスHystrixコマンド失敗の数が一定の割合(デフォルト50%)を超える要求したとき、回路遮断器が開状態(オープン)に切り替わり、ことが理解される。この場合、すべての要求は失敗の後端に直接送信されていませんサービス。一定期間(デフォルトでは5秒)に自動的に半開状態(HALF-OPEN)に切り替わります。この場合、リクエストが成功したかどうかを判断します、状況を返すように要求、回路ブレーカーのスイッチバックの閉鎖状態を(後に回路ブレーカ開放状態を保持します開いた状態にCLOSED)、またはスイッチバック(オープン).Hystrix遮断器はヒューズで私たちの家族のようなものです、バックエンドサービスが利用できないと、回路ブレーカは、このように影響を与え、無効な​​多数の要求を送信することを避けるために、直接要求チェーンを切断しますシステム・スループット、および自己テスト回路ブレーカおよび回復する機能。

3.2フォールバック

フォールバック同等ダウングレードする。バックエンドサービス要求例外は、あなたが値フォールバックメソッドの戻りを使用することができたときに、クエリ操作のために、我々は、フォールバック方式を実現することができます。フォールバックの戻り値は、通常、デフォルト値またはバッファから設定されています。
3.3リソース隔離

Hystrixでは、メインリソース隔離がスレッドプールによって達成され、我々は、スレッドプールを使用する場合、通常は複数のリモートサービス呼び出しに応じて分割されます。例えば、商品やサービスのコマンドAのスレッドプールに呼び出し、スレッドプールBへのコマンドのアカウントサービスを呼び出し、これの主な利点は、動作環境を離れて設定されたことです。コードは、そのスレッドプールが使い果たされている他の原因による不具合やサービスを呼び出す、また意志にそうしても、それは他のサービスシステムに影響を与えるが、スレッドプールをもたらすコストは、追加をもたらす複数のシステムを維持することですパフォーマンスのオーバーヘッド。そこに厳しい性能要求があると、サービスを呼び出すために必ず自分のクライアントコードを作成した場合は問題になることはありません、あなたは、分離株のリソースにHystrix信号パターン(セマフォ)を使用することができます。

5.Hystrixダッシュボード

Hystrix-ダッシュボードは、リアルタイムHystrixダッシュボードによりHystrixを監視するためのツールである、我々は視覚的に各Hystrixコマンド要求応答時間、成功率要求データを見ることができます。

6.Springクラウドタービン

我々はHystrixダッシュボードを統合する上で、使用Hystrix Dashboardは、単一のアプリケーション内のサービス情報を見ることができます。明らかに、これは十分ではありません、我々はシステム内の集計データに複数のサービスを、私たちを可能にし、Hystrixダッシュボードに表示されるツールを必要とする、このツールはタービンです。

おすすめ

転載: www.cnblogs.com/xc-xinxue/p/12543555.html