微服务面试题

本文是一场关于微服务的面试对话,涵盖了Spring Cloud的组件如Eureka、Nacos、Ribbon、Feign、Hystrix、Zuul/Gateway,以及服务注册发现、负载均衡策略、服务雪崩解决方案、服务监控(Skywalking)、限流算法和分布式事务。讨论了Nacos与Eureka的区别,自定义负载均衡策略,服务降级、熔断策略,以及分布式事务的Seata AT模式。还涉及了接口幂等性设计和xxl-job的路由策略及故障处理。
摘要由CSDN通过智能技术生成

微服务面试题

**面试官:**Spring Cloud 5大组件有哪些?

候选人:

早期我们一般认为的Spring Cloud五大组件是

  • Eureka : 注册中心
  • Ribbon : 负载均衡
  • Feign : 远程调用
  • Hystrix : 服务熔断
  • Zuul/Gateway : 网关

随着SpringCloudAlibba在国内兴起 , 我们项目中使用了一些阿里巴巴的组件

  • 注册中心/配置中心 Nacos

  • 负载均衡 Ribbon

  • 服务调用 Feign

  • 服务保护 sentinel

  • 服务网关 Gateway

**面试官:**服务注册和发现是什么意思?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支持服务列表变更的消息推送模式&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值