dubboでどうやってサービスアドレスのリストを取得するか
Dubboでは、サービスを購読する方法でサービスアドレスのリストを取得できます。
- Zookeeperを利用したサービス登録・参照:Dubboは、Zookeeperにサービス提供先のアドレスを登録でき、クライアントはZookeeper上のノードを監視して、サービスアドレスのリストを取得できます。次の構成でサービスの参照を実現できます。
- Zookeeper登録センターを使用する
dubbo.registry.address=zookeeper://localhost:2181登録サービスインターフェースを指定する
dubbo.consumer.subscribe=xxxService - Dubboはクライアントが起動すると、Zookeeper上の関連するノードを自動的に監視し、サブスクライブしたサービスインターフェースに基づいてサービスアドレスリストを取得します。
- Daubo を Nacos レジストリセンターとして使用し、サービス登録とサブスクリプションを行います。以下の設定でサービスのサブスクリプションが実現します。
- dubbo.registry.address=nacos://127.0.0.1:8848
dubbo.consumer.subscribe=xxxService - Dubboはクライアント起動時に自動的にNacos上関連サービスをリッスンし、サブスクリプションサービスインターフェースに従ってサービスアドレスリストを取得します。
リージョンセンターを介さないダブボサービスアドレスの取得方法として、直結方式が利用できます。直結方式では、サービス提供者のアドレスをクライアント側で直接設定し、リージョンセンターによるサービスのサブスクリプションを介しません。以下の設定により、直結方式を実現できます。
# 直连方式
dubbo.registry.address=
dubbo.consumer.url=dubbo://ip:port/xxxService
設定ファイルのdubbo.registry.addressを空にし、dubbo.consumer.urlでサービスプロバイダーアドレスを設定すると、ダイレクト接続方式を実現できます。