Spring Cloud Alibaba : Nacos服务注册中心

承接上一篇学习内容: Spring Cloud Alibaba : Nacos服务配置中心

 

一 准备dubbo的service工程

1.1 按照 IDEA创建maven父子工程 这篇文章新建hobby-service子类,用于存放dubbo的service接口

 

1.2 在接口com.chaixy.hobby.service.admin.HobbyAdminService中添加抽象方法

1.3 将hobby-service引入到hobby-admin和hobby-consumer中

        <dependency>
            <groupId>com.chaixy</groupId>
            <artifactId>hobby-service</artifactId>
            <version>1.0.0</version>
        </dependency>

 

 

 

 二 改造父工程,引入dubbo的包

2.1 在父工程中加入dubbo所需的依赖

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-dubbo</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

①必须包含spring-boot-starter-actuator包 

②spring-cloud-starter-dubbo包需要注意groupId,根据具体使用的spring cloud alibaba版本依赖来确定。

项目孵化期间,使用的groupId为:org.springframework.cloud;
项目孵化之后,使用的groupId修改为了com.alibaba.cloud,所以用户需要注意是否使用正确。避免加载不到对应JAR包的问题。

 


三 改造hobby-admin工程,使其成为dubbo服务的提供方

3.1 在其启动类加入@EnableDiscoveryClient注解

 

3.2 在hobby-admin中添加hobby-service:HobbyAdminService的实现类,

      并且给实现类添加dubbo的注解org.apache.dubbo.config.annotation.Service,将其注入到spring容器中

 

3.3 在bootstrap.yml中添加nacos注册中心的必要配置

 

dubbo:
  scan:
    # dubbo 服务扫描基准包
    base-packages: com.chaixy.hobby.admin.impl
  protocol:
    # dubbo 协议
    name: dubbo
    # dubbo 协议端口( -1 表示自增端口,从 20880 开始)
    port: -1
  registry:
    # 挂载到 Spring Cloud 注册中心
    address: spring-cloud://localhost

dubbo.scan.base-packages : 指定 Dubbo 服务实现类的扫描基准包

 

3.4 startup.cmd -m -standalone启动nacos,并且启动hobby-admin工程

访问 http://127.0.0.1:8848/nacos,查看服务列表

说明我们的服务提供方hobby-admin已经成功将其服务注册测到nacos中

 

 

四 将hobby-consumer改造为dubbo的消费方

4.1 同hobby-admin一样,在其启动类加入@EnableDiscoveryClient注解,在bootstrap.yml中添加nacos注册中心的必要配置

dubbo:
  scan:
    # dubbo 服务扫描基准包
    base-packages: com.chaixy.hobby.customer.impl
  protocol:
    # dubbo 协议
    name: dubbo
    # dubbo 协议端口( -1 表示自增端口,从 20880 开始)
    port: -1
  registry:
    # 挂载到 Spring Cloud 注册中心
    address: spring-cloud://localhost 

dubbo.scan.base-packages : 指定 Dubbo 服务实现类的扫描基准包

 

4.2 启动hobby-consumer工程,查看是否成功注册到nacos中

 

4.3 在com.chaixy.hobby.customer.nacos.NacosConfigController中引入dubbo的服务提供方的接口(@Reference)

 

4.4 访问hobby-consumer的"/dubbo"接口

改造完成

 

posted @ 2021-11-26 10:40  码界小小学生  阅读(112)  评论(0编辑  收藏  举报