微服务篇之注册中心

一、eureka

1.eureka的作用

2.eureka工作流程

  1. 服务提供者和服务消费者向注册中心注册服务信息,然后注册中心记录了对应的服务器地址。

  2. 服务消费者从注册中心拉取服务提供者的信息。

  3. 通过负载均衡找到对应的服务提供者地址。

  4. 服务消费者远程调用对应的服务提供者。

  5. 其中,每个微服务都需要向注册中心定期发送心跳,防止服务宕机却不知道。

二、nacos

1.nacos的作用

三、面试题及回答

**面试官:**服务注册和发现是什么意思?Spring Cloud 如何实现服务注册发现?

**候选人:**我理解的是主要三块大功能,分别是服务注册 、服务发现、服务状态监控。

我们当时项目采用的eureka作为注册中心,这个也是spring cloud体系中的一个核心组件。

服务注册:服务提供者需要把自己的信息注册到eureka,由eureka来保存这些信息,比如服务名称、ip、端口等等。

服务发现:消费者向eureka拉取服务列表信息,如果服务提供者有集群,则消费者会利用负载均衡算法,选择一个发起调用。

服务监控:服务提供者会每隔30秒向eureka发送心跳,报告健康状态,如果eureka服务90秒没接收到心跳,从eureka中剔除。

**面试官:**我看你之前也用过nacos、你能说下nacos与eureka的区别?

**候选人:**我们当时xx项目就是采用的nacos作为注册中心,选择nacos还要一个重要原因就是它支持配置中心,不过nacos作为注册中心,也比eureka要方便好用一些,主要相同不同点在于几点:

  • 共同点

Nacos与eureka都支持服务注册和服务拉取,都支持服务提供者心跳方式做健康检测。

  • Nacos与Eureka的区别

①Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式

②临时实例心跳不正常会被剔除,非临时实例则不会被剔除。

③Nacos支持服务列表变更的消息推送模式,服务列表更新更及时。

④Nacos集群默认采用AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式。

相关推荐
用户298698530146 分钟前
Java 实现 Word 文档加密与权限解除
java·后端
自由路飞37 分钟前
RAG 混合检索深挖:BM25 和向量分数为什么不能直接相加?
面试
Yeats_Liao41 分钟前
14:Servlet中的页面跳转-Java Web
java·后端·架构
未秃头的程序猿1 小时前
告别"if-else地狱"!Java 21模式匹配,代码优雅了10倍
java·后端·面试
raindesound1 小时前
计算机基础:ADT(Abstract Data Type)抽象数据类型 (2)
架构
武子康1 小时前
调查研究-201 Rust 里的 dev build 和 release build:为什么同一份代码性能差这么多?
后端·架构·rust
鹤望兰6751 小时前
字节跳动国际支付-后端开发-三面面经
java
raindesound1 小时前
计算机基础:ADT(Abstract Data Type)抽象数据类型 (1)
架构
夕阳与风馨1 小时前
大文件(20GB+)SFTP 下载模块设计与实现
后端·架构
Flittly1 小时前
【AgentScope Java新手村系列】(14)人机交互
java·spring boot·spring