springboot+dubbo+zookeeper(微服务生产者与消费者实战)

一,生产者配置:

1,导入依赖

<!-- dubbo -->
    <dependency>
      <groupId>io.dubbo.springboot</groupId>
      <artifactId>spring-boot-starter-dubbo</artifactId>
      <version>1.0.0</version>
    </dependency>

    <!-- 服务注册中心 -->
    <dependency>
      <groupId>org.apache.zookeeper</groupId>
      <artifactId>zookeeper</artifactId>
      <version>3.4.6</version>
    </dependency>

2,写业务类

正常编写service业务类,再提供好dubbo类,用@service(interfaceName)注解,注意:是dubbo包的:

com.alibaba.dubbo.config.annotation.Service

3,配置duboo和zookeeper

#dubbo
spring.dubbo.application.name=live
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
spring.dubbo.registry.check=false
spring.dubbo.protocol.name=dubbo
#该路径为dubbo提供的类路径
spring.dubbo.scan=com.messcat.qiniuyun.live.service.dubbo
#暴露的端口
spring.dubbo.protocol.port=20890

二,消费者配置

1,导入依赖,同上。

2,业务注入类

3,消费者配置

spring.dubbo.application.name=consumer
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
spring.dubbo.registry.timeout=100000
spring.dubbo.protocol.name=dubbo
#配置需要用到注入生产者的包路径,多个路径则用逗号分隔。
spring.dubbo.scan=com.messcat.audit.service.impl,com.messcat.live.service.impl
#u8BF7u6C42u53CAu54CDu5E94u6570u636Eu5305u5927u5C0Fu9650u5236uFF0Cu5355u4F4DuFF1Au5B57u8282
spring.dubbo.protocol.payload=50331648
#u66B4u9732u7684u7AEFu53E3
spring.dubbo.protocol.port=20890

注意:方法的入参需要序列化,枚举类实测不支持,不知新版本支持了没。

经验分享 程序员 微信小程序 职场和发展