Spring Cloud实战 | 第二篇:Spring Cloud整合Nacos实现注册中心

前言

随着eureka的停止更新,如果同时实现注册中心和配置中心需要SpringCloud Eureka和SpringCloud Config两个组件;配置修改刷新时需要SpringCloud Bus消息总线发出消息通知(Kafka、RabbitMQ等)到各个服务完成配置动态更新,否则只有重启各个微服务实例,但是nacos可以同时实现注册和配置中心,以及配置的动态更新。

版本声明

Nacos Server: 1.3.2

SpringBoot: 2.3.0.RELEASE

SpringCloud: Hoxton.SR5

SpringCloud Alibaba: 2.2.1.RELEASE

项目实战

1.项目背景

本篇项目实战是基于开源 有来商城youlai-mall 使用的微服务基础脚手架 youlai 这个项目,原先使用的是eureka,现在在此基础上创建个nacos分支,并在这个分支上完成eureka到nacos的升级,话不多说,一张图说明。

下文就认证中心youlai-auth模块升级为nacos举例说明

2.工程整合nacos

父工程添加spring-cloud-alibaba依赖

<properties>
    <spring-cloud-alibaba.version>2.2.0.RELEASE</spring-cloud-alibaba.version>
</properties>

<dependencyManagement>
    <dependencies>
        ...
        <!--Spring Cloud Alibaba 相关依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>${spring-cloud-alibaba.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        ...
    </dependencies>
</dependencyManagement>

子模块youlai-auth添加nacos依赖

<!-- nacos 依赖-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

应用启动类入口类添加注解开启服务的注册和发现

@EnableDiscoveryClient
@SpringBootApplication
public class AuthApplication {
    public static void main(String[] args) {
        SpringApplication.run(AuthApplication.class);
    }
}

服务注册中心配置

spring:
  application:
    name: youlai-auth
  cloud:
    nacos:
      discovery:
        server-addr: http://localhost:8848

打开nacos控制台进入服务列表查看

结语

至此youlai-auth模块整合nacos注册中心完成了,完整代码地址在 https://github.com/users/hxrui ,下篇就youlai-auth如何整合nacos完成配置中心进行说明。未完待续...

posted @ 2020-08-30 01:40  有来技术  阅读(12175)  评论(2编辑  收藏  举报