目录
文章中配置文件的修改都是基于简单Dubbo项目项目,由于要使用zookeeper注册中心,所以还需要安装好zk,基于虚拟机安装zookeeper可以参考zookeeper的安装配置,window系统下的按照也是大同小异。
Jar包依赖
这里使用的是使用 curator 客户端
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>4.0.1</version>
</dependency>
服务提供者配置文件修改
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
<dubbo:application name="demo-service"/>
<dubbo:registry id="rg1" address="zookeeper://192.168.199.134:2181" />
<!--dubbo多协议支持 它还可以支持 rmi、hessian、http、webservice、thrift、rest-->
<!--dubbo协议-->
<dubbo:protocol name="dubbo" port="20880"/>
<!--webservice协议-->
<dubbo:protocol name="webservice" port = "8099" server ="jetty"/>
<dubbo:service interface="com.godwar.dubbo.IEatService" ref="eatService" protocol="dubbo" registry="rg1"/>
<dubbo:service interface="com.godwar.dubbo.ISleepService" ref="sleepService" protocol="webservice" />
<bean id="eatService" class="com.godwar.dubbo.EatServiceImpl"/>
<bean id="sleepService" class="com.godwar.dubbo.SleepServiceImpl"/>
</beans>
客户端修改配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
<dubbo:application name="animal-service"/>
<dubbo:registry id="rg1" address="zookeeper://192.168.199.134:2181" />
<!-- 声明需要暴露的服务接口 -->
<dubbo:reference interface="com.godwar.dubbo.IEatService" id="eatService" registry="rg1"/>
</beans>