Nacos服务注册与发现
前置工作
项目结构图:
如上图,我们以打车项目为例,当用户打车成功的时候,会调用 hailtaxi-order,hailtaxi-order会下订单,同时修改司机状态,修改状态需要调用 hailtaxi-driver,我们把 hailtaxi-order服务和 hailtaxi-driver服务都注册到Nacos中,并实现服务调用,如果整个调用都没有问题,就说明服务注册发现没问题。(默认配置好了open-fegin)
关于SpringCloud Alibaba和SpringBoot的版本,我们可以通过https://start.spring.io/actuator/info查看。
项目中如果使用Nacos,需要使用 bootstrap.yml,因为bootstrap.yml 先于 application.yml 加载。因此我们需要将项目中的 application.yml 换成bootstrap.yml 。
①修改两个项目的pom文件,引入nacos注册依赖
<!--nacos-discovery-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.5.RELEASE</version>
</dependency>
②我们修改hailtaxi-driver的 application.yml 改名为 bootstrap.yml 并且添加如下配置:
完整配置如下:
③修改hailtaxi-order的 application.yml 改名为 bootstrap.yml 并且添加如下配置:
完整配置如下:
④然后再在两个项目的主启动类上加上注解@EnableDiscoveryClient
测试
此时我们运行2个项目,可以发现在Nacos中已经注册了相关服务,如下图:
此时用Postman访问打车下单,效果如下:

此时服务调用没有任何问题,说明服务注册和服务发现正常。