dubbo zookeeper需要哪些包
在使用Dubbo和Zookeeper进行服务注册和发现时,需要引入以下两个包:
1. dubbo-dependencies 包:这是Dubbo框架的依赖包,包含Dubbo的核心功能和相关的依赖。
2. zookeeper 包:这是Zookeeper客户端的依赖包,用于与Zookeeper进行通信和操作。
可以在项目的Maven配置文件中添加以下依赖:
```xml
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-dependencies</artifactId>
<version>2.7.7.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.4.14</version>
</dependency>
```
这样就可以使用Dubbo和Zookeeper进行服务注册和发现了。
dubbo调用流程原理
步骤
1/7分步阅读
服务容器Container 负责启动加载运行服务提供者Provider。根据Provider配置的文件根据协议发布服务 , 完成服务的初始化.
2/7
Provider在启动时,根据配置中的Registry地址连接Registry,将Provider的服务信息发布到Registry,在Registry注册自己提供的服务。
3/7
Consumer在启动时,根据消费者XML配置文件中的服务引用信息,连接到Registry,向Registry订阅自己所需的服务。
4/7
Registry根据服务订阅关系,返回Provider地址列表给Consumer,如果有变更,Registry会推送最新的服务地址信息给Consumer。
5/7
Consumer调用远程服务时,会根据路由策略,先从缓存的Provider地址列表中选择一台进行,跨进程调用服务,假如调用失败,再重新选另一台调用。
6/7
服务Provider和Consumer,会在内存中记录调用次数和调用时间,每分钟发送一次统计数据到Monitor。
7/7
这就是整个完整的Dubbo调用过程和原理
Dubbo调用流程原理是:服务消费者通过本地代理对象调用远程服务接口,代理对象将请求包装成协议消息,发送至注册中心,注册中心通过服务提供者地址列表和负载均衡算法选择合适的服务提供者,将请求转发至服务提供者,服务提供者处理请求并将结果返回给注册中心,注册中心将结果返回给服务消费者,服务消费者得到最终结果。
还没有评论,来说两句吧...