微服务篇之注册中心

一、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方式。

相关推荐
FQNmxDG4S24 分钟前
Java多线程编程:Thread与Runnable的并发控制
java·开发语言
码点滴1 小时前
什么时候用 DeepSeek V4,而不是 GPT-5/Claude/Gemini?
人工智能·gpt·架构·大模型·deepseek
heimeiyingwang1 小时前
【架构实战】状态机架构:订单/工单状态流转设计
观察者模式·架构·wpf
虹科网络安全1 小时前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
axng pmje2 小时前
Java语法进阶
java·开发语言·jvm
rKWP8gKv72 小时前
Java微服务性能监控:Prometheus与Grafana集成方案
java·微服务·prometheus
老前端的功夫2 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
qq_435287922 小时前
第9章 夸父逐日与后羿射日:死循环与进程终止?十个太阳同时值班的并行冲突
java·开发语言·git·死循环·进程终止·并行冲突·夸父逐日
小江的记录本2 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
yaoxin5211232 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python