Spring Cloud 常考面试题解析

服务注册与发现

问:Spring Cloud 中服务注册与发现是如何实现的?

服务注册与发现是通过服务注册中心实现的。应用启动时,将自身信息注册到注册中心;客户端通过注册中心获取所需服务的地址信息。

问:常用的服务注册中心有哪些?

  • Netflix Eureka
  • Alibaba Nacos
  • Consul

负载均衡

问:Spring Cloud 如何实现负载均衡?

Spring Cloud 使用 Netflix Ribbon 实现客户端负载均衡。

问:Ribbon 的负载均衡策略有哪些?

  • 轮询
  • 随机
  • 加权响应时间
  • ...

熔断机制

问:什么是熔断机制?

熔断机制是一种保护机制,当服务调用失败次数达到一定阈值时,熔断器会打开,后续请求将直接返回失败,避免级联故障。

问:Spring Cloud 如何实现熔断?

Spring Cloud 使用 Netflix Hystrix 或 Resilience4j 实现熔断。

分布式配置

问:Spring Cloud Config 的作用是什么?

Spring Cloud Config 提供了分布式配置管理功能,可以集中管理应用的配置文件。

问:Spring Cloud Config 的工作原理是什么?

Config Server 从配置仓库读取配置文件,应用从 Config Server 获取配置信息。

API 网关

问:什么是 API 网关?

API 网关是系统的统一入口,负责路由转发、请求过滤、安全认证等功能。

问:Spring Cloud 中常用的 API 网关有哪些?

  • Spring Cloud Gateway
  • Netflix Zuul

消息队列

问:Spring Cloud 中如何使用消息队列?

Spring Cloud Stream 可以简化消息队列的使用。

问:常用的消息队列有哪些?

  • RabbitMQ
  • Kafka
  • RocketMQ