微服务注册中心springcloud使用nacos作为注册中心

1. 添加依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    <version>2.2.5.RELEASE</version>
</dependency>

2. 添加配置

spring:
  application:
    name: order-loadbanance
  cloud:
    nacos:
      server-addr: 127.0.0.1:8848
      discovery:
        username: nacos
        password: nacos
        namespace: public      # 命令空间
        service: order-loadbanance   # 注册名
        group: DEFAULT_GROUP   # 更细致的分组
        ephemeral: true  # 临时实例

服务启动后,就会自动注册到nacos注册中心。

服务客户端与nacos服务器直接会保持心跳,当服务停止后,nacos服务端接收不到心跳,一段时间后会将服务设置为停止状态,对于临时节点,会自动将服务节点删除。

nacos客户端默认5秒发送一次心跳到nacos服务器,超过15秒没有收到心跳,会将服务的健康状态设置为false,默认情况下,读取服务列表时,会排除健康状态为false的服务。

nacos服务器超过30秒没有收到心跳,则nacos服务器会将临时服务节点删除。

通过服务名访问服务时,需要使用负载均衡。

@Bean
@LoadBalanced
public RestTemplate restTemplate(RestTemplateBuilder builder)
{
    RestTemplate template = builder.build();
    return template;
}
经验分享 程序员 微信小程序 职场和发展