微服务远程调用系统实战(蠢驴测试版)

DBC 1.3K 0

抛出问题:我们需要优惠券服务能够调用用户服务,利用dubbo

生成user本地jar包

我们写一个这样结构的代码

微服务远程调用系统实战(蠢驴测试版)插图
微服务远程调用系统实战(蠢驴测试版)插图2

温馨提示

相信看起来很简单,我们开始打jar包了,可以放入另一个微服务的任意位置(目前是这种初级方法[aru_23])

二、Springboot整合Dubbo Provider的配置

引入pom依赖

       <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 -->

        <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>
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>
        <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
    # 注册中心协议
    protocol: 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.xdclass.userapp.service.dubbo")
温馨提示

微服务远程调用系统实战(蠢驴测试版)插图4
这里要注意的是箭头指向的代码,这里包一定要是dubbo相关的!

三、Springboot整合Dubbo Comsumer的配置以及注意项

引入user-service-api的jar包

温馨提示

一句话代过,懂的都懂,不懂要去补了

引入pom依赖

    <!-- 新增 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>
        <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>
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-recipes</artifactId>
            <version>4.0.1</version>
        </dependency>

修改配置文件

dubbo:
  application:
    name: user-coupon
  # 使用 zookeeper 注册中心暴露服务,注意要先开启 zookeeper
  # 注册中心id
  registry:
    id: zookeeper-registry
    # 注册中心协议
    protocol: zookeeper
    # 注册中心地址
    address: 127.0.0.1:2181

  # dubbo协议在20880端口暴露服务
  # 协议名称
  protocol:
    name: dubbo
    # 协议端口
    port: 20881
    # 协议访问log
    accesslog: dubbo-access.log
  # 重试次数
  provider:
    retries: 0
    # 超时时间
    timeout: 3000
  # 注册监控中心
  monitor:
    protocol: registry

开启注解

@EnableDubboConfig
@DubboComponentScan("com.xdclass.userapp.service.dubbo")

在调用的地方加入注解@Reference

微服务远程调用系统实战(蠢驴测试版)插图6

这个地方依然要小心

微服务远程调用系统实战(蠢驴测试版)插图8

温馨提示

好了,到这里就结束了,完成了我们开头抛出的问题!

微服务远程调用系统实战(蠢驴测试版)插图10

发表评论 取消回复
表情 图片 链接 代码

分享