SpringCloud(五) Eureka与Nacos的区别

SpringCloud(二) Eureka注册中心的使用-CSDN博客

SpringCloud(四) Nacos注册中心-CSDN博客

在这两篇博文中我们详细讲解了Eureka和Nacos分别作为微服务的注册中心的使用方法和注意事项,但是两者之间也有一些区别.

一, Nacos实例分类

Nacos实例分为两种类型:

  • 临时实例:如果实例宕机超过一定时间,会从服务列表剔除,默认的类型;
  • 非临时实例:如果实例宕机,不会从服务列表中剔除.

一般默认的实例类型是临时实例,这一点可以在Nacos的控制界面看到:

可以通过配置文件修改一个实例为永久实例:

spring:
  cloud:
    nacos:
      discovery:
        ephemeral: false # 设置为非临时实例

二, Eureka与Nacos的异同

Nacos和Eureka整体结构类似,服务注册,服务拉取,心跳等待,但是存在一定差异:

SpringCloud(五) Eureka与Nacos的区别_第1张图片

Nacos和Eureka的共同点:

  • 都支持服务注册和服务拉取
  • 都支持服务提供者心跳方式做健康检测 

Nacos和Eureka的区别:

  • Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式
  • 临时实例心跳不正常会被剔除,非临时实例则不会被剔除
  • Nacos支持服务列表变更的消息推送模式,服务列表更新更及时
  • Nacos集群默认采用AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式

你可能感兴趣的:(SpringCloud微服务,spring,cloud,eureka,java)