Spring Cloud面试考点

Spring Cloud面试的核心考点主要集中在微服务架构原理、核心组件功能及实践解决方案‌。以下是高频问题分类整理:‌

一、基础概念与核心组件

  1. 什么是Spring Cloud?
    基于Spring Boot的分布式系统工具集,提供服务注册与发现、配置管理、负载均衡等服务治理功能,简化微服务开发。

  2. 核心组件分类

    • 传统Spring Cloud组件‌:Eureka(注册中心)、Ribbon(负载均衡)、Feign(服务调用)、Hystrix(熔断)、Zuul/Gateway(网关)。
    • Spring Cloud Alibaba生态‌:Nacos(注册/配置中心)、Sentinel(流量控制)、Seata(分布式事务)。
  3. 服务注册与发现‌:

    • 工作原理‌:服务将信息注册到中心(如Eureka/Nacos),消费者动态获取实例地址。
    • Nacos与Eureka区别‌:Nacos支持CP/AP模式切换,提供配置管理功能;Eureka仅AP模式,专注于服务注册。

二、技术实现与解决方案

  1. 负载均衡机制

    • Ribbon客户端策略‌:轮询、随机、加权响应时间等,需手动配置调用目标。
    • Feign基于注解‌:集成Ribbon,通过接口声明式调用,简化代码。
  2. 服务雪崩应对

    • 熔断(Hystrix/Sentinel)‌:快速失败避免连锁故障。
    • 降级‌:返回预设结果保障核心功能。
  3. 配置中心原理(Nacos)

    • 动态更新‌:客户端监听配置变更,通过长轮询或HTTP长连接实现实时刷新。
  4. 微服务监控工具

    • 链路追踪‌:SkyWalking实现分布式请求跟踪。
    • 日志采集‌:ELK(Elasticsearch+Logstash+Kibana)集中管理日志。

三、高频进阶问题

  • 分布式事务‌:Seata的AT/TCC模式解决数据一致性。
  • 网关过滤逻辑‌:Spring Cloud Gateway通过断言(Predicate)和过滤器(Filter)实现路由与限流。
  • RPC与HTTP区别‌:RPC效率更高,但耦合性强;HTTP更灵活,适合跨语言。

你可能感兴趣的:(java,后端)