说明:
Dubbo是分布式框架,与zookeeper服务配合使用,发布服务、引用服务。
一、搭建zookeeper服务:
地址:https://blog.csdn.net/a526001650a/article/details/103667691
IP与端口配置为:172.16.122.129:2281
二、发布/引用dubbo服务:
1.在工程的pom中添加dubbo的maven依赖:
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo</artifactId>
<version>2.7.4</version>
</dependency>
2.发布dubbo服务,在需要发布服务的工程中进行配置,在此工程spring-config.xml中beans节点中加入:
<beans ...>
...
<!-- 六、使用dubbo发布服务 -->
<!-- 指定需要暴露的服务名称 -->
<dubbo:application name="cstore-user-service" />
<!-- 注册服务到zookeeper,adress为zookeeper服务器IP与端口。集群时adress="172.16.122.129:2281,172.16.122.129:2282,172.16.122.129:2283" -->
<dubbo:registry protocol="zookeeper" address="172.16.122.129:2281" />
<!-- 在20880端口暴露服务 -->
<dubbo:protocol name="dubbo" port="20880" />
<!-- 声明需要暴露的服务接口,userServiceImpl为UserService实现类UserServiceImpl -->
<dubbo:service interface="com.yyh.hkw.service.UserService" ref="userServiceImpl" timeout="300000" />
</beans>
3.引用dubbo服务,在需要调用服务接口的工程中配置:
(1)引用dubbo服务,在springmvc-config.xml的beans节点中加入:
<beans ...>
...
<!-- 五、引用dubbo服务 -->
<dubbo:application name="cstore-user-web"/>
<dubbo:registry protocol="zookeeper" address="172.16.122.129:2281"/>
<dubbo:reference interface="com.yyh.hkw.service.UserService" id="userService" />
</beans>
(2)跨服务,调用发布服务中的api。