#この記事の動作環境: Windows 10 システム、Spring Cloud 2.4.x、Thinkpad t480 コンピューター。springcloud の 5 つの主要コンポーネント: 1. Eureka はサービス ガバナンスを実装します; 2. リボンは主にクライアント側のソフトウェア負荷分散アルゴリズムを提供します; 3. Hystrix サーキット ブレーカー、保護システム、および制御障害スコープ; 4. Zuul、 APIゲートウェイ、ルーティング、ロードバランシングおよびその他の機能; 5. 構成構成管理。
springcloud の 5 つの主要コンポーネント:
1、Eureka
役割:サービス ガバナンスの実装 (サービスの登録と検出)はじめに: Spring Cloud Eureka は、Spring Cloud Netflix プロジェクトのサービス ガバナンス モジュールです。 は、Eureka サーバーと Eureka クライアントの 2 つのコンポーネントで構成されます。 Eureka サーバーはサービス登録センターとして使用されます。クラスターの展開をサポートします。 Eureka クライアントは、サービスの登録と検出を処理するために使用される Java クライアントです。 アプリケーションが起動すると、Eureka クライアントは独自のサービス情報をサーバーに登録し、サーバーのサービス情報をローカルにキャッシュします。クライアントはサーバーとのハートビート対話を定期的に実行して、サービス リースとサービス情報を更新します。2. リボン
機能: リボンは主にクライアント側のソフトウェア負荷分散アルゴリズムを提供します。 はじめに: Spring Cloud リボンは、HTTP および TCP に基づくクライアント側の負荷分散ツールであり、Netflix リボンに基づいて実装されます。 Spring Cloud のカプセル化により、サービス指向の REST テンプレート リクエストをクライアント側で負荷分散されたサービス呼び出しに簡単に自動的に変換できます。 上の図を見てください。重要な点は、負荷分散戦略に従って外部 REST 呼び出しをマイクロサービス呼び出しに変換することです。リボンには多くの負荷分散戦略がありますが、これについては後で説明します。3. Hystrix
機能: 回路ブレーカー、保護システム、制御障害範囲。 はじめに: 高可用性を確保するために、通常は単一のサービスがクラスターにデプロイされます。ネットワーク上の理由や独自の理由により、サービスは 100% の可用性を保証できません。単一のサービスに問題がある場合、そのサービスを呼び出すときにスレッド ブロッキングが発生します。このとき、大量のリクエストが殺到すると、サーブレット コンテナのスレッド リソースが消費され、サービス麻痺が発生します。サービス間の依存関係により、障害が伝播し、マイクロサービス システム全体に壊滅的な影響を及ぼします。これがサービス障害の「雪崩」効果です。4. Zuul
機能: API ゲートウェイ、ルーティング、負荷分散、その他の機能概要: nginxと同様のリバースプロキシ機能ですが、Netflix自体が他のコンポーネントと連携するための機能をいくつか追加しています。 マイクロサービス アーキテクチャでは、バックエンド サービスは呼び出し側に直接開かれないことが多く、要求された URL に基づいて API ゲートウェイを通じて対応するサービスにルーティングされます。 API ゲートウェイを追加すると、サードパーティの呼び出し元とサービス プロバイダーの間に壁が作成され、この壁が呼び出し元と直接通信して権限を制御し、バックエンド サーバーにリクエストをバランスよく分散します。5. Config
機能: 構成管理概要: SpringCloud Config はサーバーとクライアントを提供します。サーバー ストレージ バックエンドのデフォルト実装では git が使用されるため、構成環境のタグ付きバージョンを簡単にサポートし、コンテンツを管理するためのさまざまなツールへのアクセスを提供します。 これはまだ静的であり、動的な構成更新を実現するには Spring Cloud Bus と調整する必要があります。以上がspringcloud の 5 つの主要コンポーネントとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。