用Dubbo和Zookeeper实现一个简单的分布式搭建。 代码上传 dubbo-zookeeper
实现理解
有两个项目:
- 服务提供者(dubbo-provider)
- 服务消费者(dubbo-consumer)
实现逻辑:
- 在
dubbo-provider
实现一个服务,引入dubbo及相关配置,项目启动就会根据配置去Zookeeper注册一下,说明我实现这个服务,谁想用就可以来调用了。 - 在
dubbo-consumer
也引入dubbo,配置好想调用的服务,启动就会告诉Zookeeper我会使用什么服务。
当dubbo-consumer
想调用服务A时,就去问ZooKeeper,它就会把dubbo-provider
中服务A的地址告诉dubbo-consumer
,然后就根据地址去调用dubbo-provider
的服务。
dubbo-provider
- 创建此工程,代码、依赖和配置请参见Github。
- 运行此工程。
- 检查ZooKeeper。
1
2
3
4
5
6
7
8
9ls /
[zk, dubbo, zookeeper]
[zk: localhost:2181(CONNECTED) 1] ls /dubbo
[com.izheyi.com.dubbo_provider.DubboService]
[zk: localhost:2181(CONNECTED) 2] ls /dubbo/com.izheyi.com.dubbo_provider.DubboService
[configurators, providers]
[zk: localhost:2181(CONNECTED) 6] ls /dubbo/com.izheyi.com.dubbo_provider.DubboService/providers
[dubbo%3A%2F%2F10.24.33.14%3A20880%2Fcom.izheyi.com.dubbo_provider.DubboService%3Fanyhost%3Dtrue%26application%3Ddubbo-provider%26dubbo%3D2.5.3%26interface%3Dcom.izheyi.com.dubbo_provider.DubboService%26methods%3DsayHello%26pid%3D22152%26side%3Dprovider%26timestamp%3D1535618301235]
[zk: localhost:2181(CONNECTED) 7]
dubbo-consumer
- 创建此工程,代码、依赖和配置请参见Github。
- 运行此工程。