Nacos是SpringCloudAlibaba的组件,而SpringCloudAlibaba也遵循SpringCloud中定义的服务注册、服务发现规范。因此使用Nacos和使用Eureka对于微服务来说,并没有太大区别。
也就是说之前的Ribbon负载均衡等等都适用于Nacos。
主要差异在于:
-
依赖不同
-
服务地址不同
1.引入依赖
因为SpringCloudAlibaba 是后来加入springcloud的,所以需要另外引入
Ⅰ.在父工程中引入SpringCloudAlibaba的依赖:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.6.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
Ⅱ.在服务(消费者和提供者)中引入nacos客户端依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
到这里,依赖就算是引入完成了,但是大家或许会有一个疑惑,还记得在学习eureka时我们还单独创建了一个eureka-server的微服务,并且在其中还引入了eureka的服务端依赖,但是这里为什么不需要做类似操作了。这是因为我们刚刚不是在Windows上安装好了nacos并成功启动了么,其实那个就是服务端了。
2.配置nacos地址
在消费者和提供者服务的application.yml中添加nacos地址:
spring:
cloud:
nacos:
server-addr: localhost:8848
3.重启
重启微服务后,登录nacos管理页面,可以看到微服务信息: