微服务

Sentinel、Hystrix、Gateway 对比

·4 分钟阅读·1576 字

Spring Cloud 微服务三大核心组件对比——限流熔断、服务网关

📋 目录

Sentinel、Hystrix、Gateway 对比

面试+生产必备,Spring Cloud 微服务三大组件分工与核心区别。 我给你用最简单、最直白、最容易记的方式讲清楚:
这三个都是 SpringCloud 微服务必备组件,但分工完全不同!


一句话总定位(背这个)

  1. Sentinel:阿里开源 → 限流、熔断、降级、流量控制(现在主流)
  2. Hystrix:Netflix 开源 → 老一代熔断、限流、隔离(停止维护)
  3. Gateway:Spring 官方 → API 网关、路由、统一入口(全局大门)

一、Sentinel(阿里出品,生产现在必用)

核心功能:流量防卫兵

限流、熔断、降级、热点控制、系统保护

它能做什么?

  1. 限流:控制接口每秒最多访问多少次
  2. 熔断:调用下游服务失败率高 → 暂时切断,防止雪崩
  3. 降级:高峰期关闭非核心接口,保证核心可用
  4. 热点参数限流:针对商品ID、用户ID限流(防刷)
  5. 系统保护:CPU 高自动限流

优点

  • 中文文档友好
  • 可视化控制台
  • 规则动态修改
  • 功能比 Hystrix 更强
  • 现在微服务默认使用

一句话总结

Sentinel = 微服务的保险丝 + 流量管家


二、Hystrix(老一代熔断器,已停更)

核心功能:服务熔断、隔离、降级

它是最早的微服务熔断组件,现在已经停止维护,被 Sentinel 替代。

它能做什么?

  1. 熔断:服务挂了 → 快速失败,不阻塞
  2. 线程池隔离:每个服务独立线程池,不互相影响
  3. 降级:返回兜底数据

缺点

  • 官方不再更新
  • 配置复杂
  • 没有控制台
  • 线程池隔离耗资源

一句话总结

Hystrix = 老一代熔断器,现在只出现在面试题里


三、Spring Cloud Gateway(微服务统一网关)

核心功能:微服务大门、统一入口、路由转发

所有请求先进网关,再转发到对应的服务

它能做什么?

  1. 路由转发
    请求 /order/** → 转给订单服务
    请求 /user/** → 转给用户服务
  2. 统一鉴权
    登录、token 校验只写一次网关
  3. 限流
    网关层统一限流
  4. 日志、监控、跨域、黑名单
  5. 请求响应统一处理

优点

  • 异步非阻塞,性能高
  • 功能强大
  • Spring 官方标配
  • 支持限流、熔断、路由

一句话总结

Gateway = 微服务的大门、门卫、总入口


四、三者最清晰对比(面试必背)

组件角色作用状态
Sentinel流量/熔断组件限流、熔断、降级、热点主流、在用
Hystrix老熔断组件熔断、隔离、降级停止维护
Gateway网关统一入口、路由、鉴权、限流官方标配

五、它们在微服务里的位置(超级形象)

  1. Gateway = 小区大门
  2. Sentinel/Hystrix = 每家房门的保险丝

六、面试标准答案(直接背)

  1. Sentinel 是阿里开源的流量控制、熔断降级组件,功能强大,现在微服务首选。
  2. Hystrix 是一代熔断组件,已停止维护,被 Sentinel 替代。
  3. Gateway微服务网关,负责统一入口、路由转发、鉴权、限流。

关联文档

  • ../../container/Docker 容器网络深度原理 — 容器网络与微服务
  • ../../kubernetes/service/K8s Service 核心原理 — K8s 服务发现与网关