02-Nacos和Eureka的区别与联系

Nacos和Eureka的区别

联系

Nacos和Eureka整体结构类似: 都支持服务注册, 服务拉取, 采用心跳方式对服务提供者做健康监测的功能

区别

Nacos支持服务端主动检测服务提供者状态: 临时实例采用心跳模式,非临时实例采用主动检测模式但对服务器压力比较大(不推荐)

  • 心跳模式: 服务提供者会每隔一段时间(默认30秒)向Eureka/Nacos服务端发送心跳请求用来报告自己的健康状态
  • 主动检测模式: Nacos服务端支持主动检测服务提供者判断是否宕机

Nacos支持服务列表变更的消息推送模式可以让缓存的服务列表更新更及时

  • Nacos集群默认采用AP方式, 当集群中存在非临时实例时采用CP模式, 而Eureka一直采用AP方式

服务注册到Nacos时,可以通过在配置文件添加spring.cloud.nacos.discovery.ephemeral配置选择将服务实例注册为临时或非临时实例

  • 临时实例(默认的类型): 采用心跳检测判断是否宕机,如果该实例宕机超过一定时间就会从服务列表剔除
  • 非临时实例(永久实例): Nacos主动询问判断是否宕机,即使该实例宕机也不会从服务列表剔除,只会把其标记为不健康状态
YML 复制代码
# 在oreder-service模块的applicaition.yml配置文件中将oreder-service服务注册为永久实例
spring:
  cloud:
    nacos:
      discovery:
        ephemeral: false # 设置为非临时实例(永久实例)
相关推荐
mit6.8245 分钟前
[C# starter-kit] 命令/查询职责分离CQRS | MediatR |
java·数据库·c#
诸神缄默不语29 分钟前
Maven用户设置文件(settings.xml)配置指南
xml·java·maven
任子菲阳33 分钟前
学Java第三十四天-----抽象类和抽象方法
java·开发语言
学Linux的语莫1 小时前
机器学习数据处理
java·算法·机器学习
找不到、了1 小时前
JVM的即时编译JIT的介绍
java·jvm
西瓜er2 小时前
JAVA:Spring Boot 集成 FFmpeg 实现多媒体处理
java·spring boot·ffmpeg
你总是一副不开心的样子(´ . .̫ .2 小时前
一、十天速通Java面试(第三天)
java·面试·职场和发展·java面试
迎風吹頭髮2 小时前
UNIX下C语言编程与实践63-UNIX 并发 Socket 编程:非阻塞套接字与轮询模型
java·c语言·unix
我是华为OD~HR~栗栗呀2 小时前
23届考研-Java面经(华为OD)
java·c++·python·华为od·华为·面试
Javatutouhouduan2 小时前
Java程序员如何深入学习JVM底层原理?
java·jvm·java面试·后端开发·java架构师·java程序员·互联网大厂