Nacos用于替换Spring Cloud Eureka和Spring Cloud Config,集注册中心和配置中心功能于一体。
本地测试搭建使用的环境为:win10, JDK8, MySQL5.6, Nacos-server-1.3.2, Spring Boot 2.2.2.RELEASE(Spring Boot 2.1.7.RELEASE), Spring Cloud Alibaba 2.1.1.RELEASE。Spring Boot和Spring Cloud Alibaba版本对应关系一定要一致,否则服务注册不成功。
1、Nacos-server下载和安装
从https://github.com/alibaba/nacos/releases下载最新版本nacos-server-1.3.2.zip压缩包,解压缩。
在MySQL数据库中新建nacos数据库,数据库版本为5.6,编码为utf8,之后执行conf目录下的nacos-mysql.sql脚本,会创建一些表。之后修改conf目录下的application.properties文件中的数据库连接信息,
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=你的数据库用户
db.password=你的数据库密码
切换到bin目录,使用命令启动Nacos server,startup.cmd -m standalone
启动成功后,在浏览器地址栏输入http://localhost:8848/nacos/,8848为默认端口,默认登录账号密码为nacos/nacos。
2、idea中创建Spring Boot微服务,在pom.xml添加以下几个引用。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.1.1.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
application.properties简单设置为:
server.port=8080
spring.application.name=TestService
#nacos注册中心
spring.cloud.nacos.discovery.server-addr=localhost:8848
3、在启动类上添加注解@EnableDiscoveryClient,启动微服务。
4、登录Nacos注册中心,在服务列表中可以看到刚刚添加的TestService服务。
以上是最简单的Nacos注册中心及服务注册的过程。