Springboot:整合DubboProvider的配置以及Comsumer的配置

项目结构
在这里插入图片描述

相关依赖

依赖引入放到服务模块下 也就是user-app

        <!--dubbo-->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo</artifactId>
            <version>2.7.2</version>
            <exclusions>
                <exclusion>
                    <artifactId>spring</artifactId>
                    <groupId>org.springframework</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.dubbo/dubbo -->
        <!--zookeeper-->
        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.10</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-log4j12</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <!--zookeeper连接java的工具-->
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>
        <!--zookeeper补丁包 自动重连 分布式锁 编程风格等-->
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-recipes</artifactId>
            <version>4.0.1</version>
        </dependency>

相关配置

# dubbo config
# 应⽤定义了提供⽅应⽤信息,⽤于计算依赖关系;在 dubbo-admin 或 dubbo-monitor 会显示这个名字,⽅便辨识
dubbo:
  application:
    name: user-app
  # 使⽤ zookeeper 注册中⼼暴露服务,注意要先开启 zookeeper
  # 注册中⼼id
  registry:
    id: zookeeper-registry
    # 注册中⼼协议 阿里提供的不光有zookeeper还有别的
    protocol: zookeeper
    # 注册中⼼地址 使用自己搭建好的zookeeper的地址
    address: 127.0.0.1:2181
  # dubbo协议在20880端⼝暴露服务
  # 协议名称
  protocol:
    name: dubbo
    # 协议端⼝
    port: 20880
    # 协议访问log
    accesslog: dubbo-access.log
  #重试次数
  provider:
    retries: 0
    # 超时时间
    timeout: 3000
  # 注册监控中⼼
  monitor:
    protocol: registry

启动类注解

@EnableDubboConfig
@DubboComponentScan("com.jhclass.userapp.service")//对外提供的服务包路径

进⾏@Service注解扫描 @org.apache.dubbo.config.annotation.Service 序列化传输对象

对⽐加⼊dubbo依赖和没加依赖前后的区别

dubbo跑起来了

ZK连接上了 dubbo端⼝和http端⼝同时跑起来了
在这里插入图片描述

在这里插入图片描述

启动项目出现dubbo这些控制台打印就是成功了,显示了dubbo的端口协议地址什么的

Comsumer的配置

和上面一样,引入依赖,引入配置

启动类的包扫描路径是生成者的路径,远程变成本地,bean对象交给当前消费者管理

引入生产者插件包

在调⽤的地⽅加⼊注解 一定不要使用jdk的注解,会报空指针

@Reference com.alibaba.dubbo.config.annotation.Reference

下面是我消费者写了一个方法,调用生产者

在这里插入图片描述

以上就dubbo的所有配置,生产者消费者配置比较多,不要搞混,有些注解应该使用dubbo还是spring的,要弄清除,还有就是启动类的包扫描。zookeeper别忘了开

猜你喜欢

转载自blog.csdn.net/q736317048/article/details/113617938
今日推荐