返回

Sentinel Sentinel 之Slot 的子类及其实现之 FlowSlot 和 DegradeSlot

闲谈

您好,欢迎来到 Sentinel Slot 子类及其实现 FlowSlot 和 DegradeSlot 的世界。Sentinel 是一个流量控制框架,可用于保护您的系统免受过载。Slot 是 Sentinel 中用于存储资源调用统计信息的基本单位。在本文中,我们将探讨 Slot 的子类 FlowSlot 和 DegradeSlot,以及它们在 Sentinel 中的作用。

在 Sentinel 中,Slot 可以分为两个子类:FlowSlot 和 DegradeSlot。

  • FlowSlot :FlowSlot 用于存储流控相关信息,如资源的 QPS 和并发数。当资源的调用量超过阈值时,FlowSlot 会触发流控规则,阻止后续的调用。

  • DegradeSlot :DegradeSlot 用于存储熔断相关信息,如资源的失败率和熔断时间。当资源的失败率超过阈值时,DegradeSlot 会触发熔断规则,使资源进入熔断状态。在熔断状态下,所有对资源的调用都会被拒绝。

FlowSlot 和 DegradeSlot 都实现了 Slot 接口,因此它们都具有 Slot 的基本功能,包括:

  • 创建 Entry 对象
  • 记录资源调用统计信息
  • 触发规则

FlowSlot 和 DegradeSlot 之间的区别在于它们存储的信息类型和触发的规则。FlowSlot 存储流控相关信息,并触发流控规则。DegradeSlot 存储熔断相关信息,并触发熔断规则。

在 Sentinel 中,FlowSlot 和 DegradeSlot 都起着非常重要的作用。它们可以帮助我们保护系统免受过载,并确保系统的高可用性。

最后,让我们总结一下本文的主要内容:

  • Sentinel 是一个流量控制框架,可用于保护您的系统免受过载。
  • Slot 是 Sentinel 中用于存储资源调用统计信息的基本单位。
  • FlowSlot 和 DegradeSlot 是 Slot 的两个子类,分别用于存储流控相关信息和熔断相关信息。
  • FlowSlot 和 DegradeSlot 都实现了 Slot 接口,因此它们都具有 Slot 的基本功能。
  • FlowSlot 和 DegradeSlot 之间的区别在于它们存储的信息类型和触发的规则。
  • FlowSlot 存储流控相关信息,并触发流控规则。
  • DegradeSlot 存储熔断相关信息,并触发熔断规则。
  • FlowSlot 和 DegradeSlot 在 Sentinel 中都起着非常重要的作用。它们可以帮助我们保护系统免受过载,并确保系统的高可用性。

感谢您的阅读,如果您有任何问题或建议,请随时与我联系。