持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第24天,点击查看活动详情
一、Nacos client端的搭建
1-1、引入依赖
在之前两个服务中的pom,都引入nacos的依赖
<!--nacos 服务注册与发现-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
1-2、在配置文件中配置Nacos
要让服务注册到nacos中,需要给服务定义一个名称,这样后面在各个服务之间引用注册的时候,就可以通过服务名可以进行互相调用了。
在测试项目中,分别给order和stock创建对应的服务名称,服务端口,用户名密码及命名空间
order服务的配置信息:
spring:
application:
#应用名称(nacos会将该名称当做服务名称)
name: order-service
cloud:
nacos:
#nacos地址及端口
server-addr: 192.168.253.131:8848
discovery:
#nacos用户名密码
username: nacos
password: nacos
#命名空间
namespace: public
stock服务的配置信息
spring:
application:
#应用名称(nacos会将该名称当做服务名称)
name: stock-service
cloud:
nacos:
#nacos地址及端口
server-addr: 192.168.253.131:8848
discovery:
#nacos用户名密码
username: nacos
password: nacos
#命名空间
namespace: public
1-3、启动order和stock服务
启动日志可以看到已经注册到nacos中
nacos管理页面中,也可以看到order和stock服务
查看服务详情,可以看到服务的详情数据
1-4、服务关闭nacos的心跳监测
在关闭服务之后,nacos就会将服务充服务列表中移出。
1-5、通过nacos调用其他服务
之前的文章中介绍分布式服务通过ip、域名等方式进行访问其他服务,现在用了nacos就可以直接通过注册在nacos中的服务名称就可以发起调用了
1、首先将RestTemplate添加@LoadBalanced注解,设为一个负载均衡器
2、将调用服务的ip改为服务名称
3、浏览器访问
二、Nacos的配置项
除了下图中的配置外,更多配置可以看下网站介绍:github.com/alibaba/spr…