Dubbo分为提供者和消费方 并且两者都要注册到ZK上
提供者 注解 @Service 这是dubbo包下的
消费组 注解 @Reference 远程注入
第一步导入依赖
<!--zk依赖--> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.13</version> </dependency> <dependency> <groupId>com.github.sgroschupf</groupId> <artifactId>zkclient</artifactId> <version>0.1</version> </dependency> <!--Springboot 集成 Dubbo依赖--> < dependency> < groupId>com.alibaba.boot< /groupId> < artifactId>dubbo-spring-boot-starter< /artifactId> < version>0.2.0< /version> < /dependency> <!--dubbo框架 一般与上者二选一看环境--> <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <version>2.6.4</version> </dependency>
配置:
1.spring-xml的配置
服务提供者(发消息方) <!-- 不管你是服务提供者还是消费者 --><!-- 先找到注册中心 -->< dubbo:registry address="zookeeper://127.0.0. 1:2181"/> <!-- 自己叫啥名 -->< dubbo:application name="dubbo-service"/><!-- 别人要和我通信 必须使用我指定的协议和端口 -->< dubbo:protocol name="dubbo" port="20880"/><!-- 我实现了哪些接口 接口中有哪些方法 -->< dubbo:annotation package="com.maike.service "/> 消费者(收消息方) <!--1.配置 dubbo:项目的名称,唯一 如果是集群的 这个名称是一样 --> <!-- 不管是服务的提供者还是消费者都必须有一个名称--> < dubbo:application name="dubbo-web" > < dubbo:parameter key="qos.port" value="33333"/ > </ dubbo:application> <!--2.配置注册中心的地址 告诉服务提供者我们的注册中心在哪里 在项目启动的时候去把自己发布到注册中心--> < dubbo:registry address="zookeeper://127.0.0. 1:2181"/> <!--3. dubbo:配置dubbo包扫描 如果我们使用到了Dubbo的注解这边要进行包扫描 --> < dubbo:annotation package="com.maike.controller"/>
2.properties里的配置
服务提供者 dubbo.application.name=service #dubbo 扫包设置 dubbo.scan.basePackages=com.maike.service #对外暴露的端口信息 dubbo.protocol.name=dubbo dubbo.protocol.port=20880 #dubbo注册中心的配置 dubbo.registry.address=zookeeper://127.0.0.1:2181 消费者 dubbo.application.name=web dubbo.scan.basePackages=com.maike.controller dubbo.registry.address=zookeeper://127.0.0.1:2181
是