资讯配图
核心总结

《SpringCloud面试题 49道.pdf》的核心内容整理,按模块分类提炼重点,便于记忆与复习:


一、基础概念

  1. 微服务架构

  • 单体拆分为多个独立服务,进程隔离、轻量通信、独立部署、技术异构。

  • SpringCloud定位

    • 基于SpringBoot的分布式系统工具包,整合Netflix等成熟框架,简化配置(如Eureka、Hystrix、Zuul)。

  • SpringBoot vs SpringCloud

    • Boot:快速开发单个微服务;Cloud:全局服务治理(注册、配置、熔断等),依赖Boot。


    二、核心组件


    表格


    组件作用
    Eureka
    服务注册与发现,AP原则(高可用),自我保护机制防止误删服务。
    Zuul
    网关(已过时),路由转发、权限控制、负载均衡(配合Ribbon)。
    Gateway
    新一代网关(替代Zuul),基于Spring5+Reactor,支持限流、熔断。
    Ribbon
    客户端负载均衡,通过@LoadBalanced注解启用,算法:轮询、随机等。
    Feign
    声明式HTTP客户端(基于Ribbon+Hystrix),简化服务调用(接口+注解)。
    Hystrix
    熔断器,防雪崩:服务降级(fallback)、熔断(阈值触发)、隔离(线程池)。
    Config
    分布式配置中心,支持Git存储,实时刷新需配合Bus消息总线(如RabbitMQ)。
    Bus
    消息总线,广播配置变更或事件(如刷新所有客户端配置)。

    三、关键问题

    1. 雪崩效应

    • 原因:服务故障级联(如线程池耗尽、依赖服务超时)。

    • 解决:Hystrix熔断+降级+隔离(线程池隔离)。

  • 服务注册发现

    • Eureka vs ZooKeeper:Eureka保证AP(高可用),ZooKeeper保证CP(一致性,选举期间不可用)。

  • 负载均衡

    • Nginx vs Ribbon:Nginx服务端负载均衡(反向代理),Ribbon客户端负载均衡(从注册中心拉取服务列表)。

  • 网关选型

    • Nginx(C语言,高性能) vs Zuul/Gateway(Java语言,Spring生态集成更灵活)。


    四、版本对应关系


    表格


    Spring CloudSpringBoot
    Hoxton
    2.2.x
    Greenwich
    2.1.x
    Finchley
    2.0.x

    五、其他补充

    • Sleuth:分布式链路追踪,定位跨服务调用问题。

    • Stream:消息驱动框架(Kafka/RabbitMQ)。

    • Security:OAuth2/SSO安全控制。

    • Consul/Zookeeper:替代Eureka的服务发现方案。


    六、优缺点总结

    • 优点:松耦合、独立部署、技术异构、简化配置(注解驱动)。

    • 缺点:运维复杂(部署、监控)、分布式事务难、测试成本高。


    提示:重点掌握Eureka、Hystrix、Feign、Gateway的核心机制及雪崩解决方案,面试高频!

    资讯配图
    资讯配图

    本书免费下载地址


        关注微信公众号“人工智能产业链union”回复关键字“AI面试24”获取下载地址。

    往期推荐:
    【AI加油站】AI面试专题一:BIO,NIO,AIO,Netty面试题(附下载)
    【AI加油站】AI面试专题二:Git常用命令面试题(附下载)
    【AI加油站】AI面试专题三:Java常用面试题(附下载)
    【AI加油站】AI面试专题四:Linux系统的面试题集(附下载)
    【AI加油站】AI面试专题五:Memcached面试题集(附下载)
    【AI加油站】AI面试专题六:MyBatis框架的面试题(附下载)
    【AI加油站】AI面试专题七:MySQL相关的面试题资料(附下载)
    【AI加油站】AI面试专题八:Netty面试题资料(附下载)
    【AI加油站】AI面试专题九:Nginx的面试题资料(附下载)
    【AI加油站】AI面试专题十:RabbitMQ的面试题资料(附下载)
    【AI加油站】AI面试专题十一:Redis的面试题资料(附PDF下载)
    【AI加油站】AI面试专题十二:Spring的面试题资料(附PDF下载)
    【AI加油站】AI面试专题十三:Apache Tomcat的面试题资料(附PDF下载)
    【AI加油站】AI面试专题十四:Zookeeper的面试题资料(附PDF下载)
    【AI加油站】AI面试专题十五:《阿里巴巴Java开发手册》终极版的面试题资料(附PDF下载)
    【AI加油站】AI面试专题十六:大数据技术面试题资料(附PDF下载)
    【AI加油站】AI面试专题十七:Java并发多线程面试题资料(附PDF下载)
    【AI加油站】AI面试专题十八:设计模式的面试题资料(附PDF下载)
    【AI加油站】AI面试专题十九:Java虚拟机(JVM)的面试题资料(附PDF下载)
    【AI加油站】AI面试专题二十:Elasticsearch的面试题资料(附PDF下载)
    【AI加油站】AI面试专题二十一:TCP UDP Socket Http网络编程的面试题资料(附PDF下载)
    【AI加油站】AI面试专题二十二:消息队列Kafka的面试题资料(附PDF下载)