ダボと飼育員の関係は何ですか?次の記事ではダボと飼育員の関係について紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。
Dubbo は、サービス登録センターとして Zookeeper を使用することをお勧めします。
1. Zookeeper の役割:
zookeeper は、サービスの登録と負荷分散の実行に使用されます。どのサービスがどのマシンによって提供されるかは、呼び出し元に知られている必要があります。簡単に言うと、IPアドレスとサービス名の対応です。もちろん、この対応はハード コーディングを通じて呼び出し側のビジネス コードに実装することもできます。ただし、サービスを提供するマシンがハングアップした場合、呼び出し側はそれを知る方法がありません。コードが変更されない限り、要求は継続されます。サービスを提供するためにデッドマシン。 Zookeeper は、ハートビート メカニズムを通じてハングしたマシンを検出し、ハングしたマシンの IP とサービスの間の対応関係をリストから削除できます。高同時実行性のサポートについては、簡単に言えば、コードを変更せずにマシンを追加することでコンピューティング能力を向上させる、水平方向の拡張を意味します。新しいマシンを追加して ZooKeeper にサービスを登録すると、サービス プロバイダーの数が増え、より多くの顧客にサービスを提供できるようになります。
2. dubbo の役割:
Dubbo は中間層を管理するツールであり、ビジネス層とデータ ウェアハウスの間には多くのサービスがあります。サービスプロバイダーはスケジューリングを必要とし、dubbo はこの問題を解決するフレームワークを提供します。
ここでのダボは単なるフレームであることに注意してください。棚に何を置くかは完全にあなた次第で、車のスケルトンと同じように、ホイール エンジンと一致する必要があります。このフレームワークでスケジューリングを完了するには、すべてのサービスのメタデータを保存する分散登録センターが必要です。zk またはその他を使用できますが、全員が zk を使用します。
3. 飼育員とダボの関係:
ダボは登録センターを抽象化し、さまざまなストレージ メディアに接続して登録センターにサービスを提供できるようにします。記憶媒体としての Zookeeper の紹介では、Zookeeper の機能も紹介します。
1 つ目は負荷分散です。単一の登録センターの収容能力は限られています。トラフィックが特定のレベルに達すると、トラフィックを迂回する必要があります。負荷分散は次の目的で存在します。 Zookeeper クラスターが連携する 対応する Web アプリケーションは負荷分散を簡単に実現できます;
リソースの同期: 負荷分散だけでは十分ではなく、ノード間のデータとリソースを同期する必要があります。そして、Zookeeper クラスターには当然そのような機能があります;
ネーミング サービス: ツリー構造を使用してグローバル サービス アドレス リストを維持します。サービス プロバイダーが開始されると、指定されたノード ディレクトリに書き込みます。自身の URL アドレスを指定すると、この操作でサービスのリリースが完了します。
Mast: ZooKeeper は、クライアントが既存の ZNode を作成できないようにできます。つまり、複数のクライアントが同時に同じ一時ノードの作成を要求した場合、最終的に正常に作成されるクライアント要求は 1 つだけです。この機能を使用すると、分散環境でマスター選出を簡単に行うことができます。
分散ロック: 分散ロックは、分散システム間の共有リソースへの同期アクセスを制御する方法です。現在ロックを取得しているクライアント マシンがクラッシュまたは再起動すると、一時ノードが削除され、ロックが解放されます。ビジネス ロジックが正常に実行された後、クライアントは作成した一時ノードをアクティブに削除し、ロックを解放します。
さらに関連する知識については、PHP 中国語 Web サイト に注目してください。 !
以上がダボと飼育員の関係は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。