江西新闻网

基于令牌桶算法实现的分布式无锁限流框架(SnowJena)

Qianfeng JAVA Development Institute我想分享3天前

SnowJena#

什么#

基于令牌桶算法的分布式无锁限流框架支持排污和降级,支持动态配置规则,支持可视化监控,开箱即用。

名词#

当前限制#

当我们设计一个功能,准备上线时,这个功能会消耗一些资源,处理限制为1秒,服务3000 QPS,但如果实际情况遇到QPS高于3000,如何解决呢?该项目提供如果QPS超过某个阈值,系统可以通过直接拒绝或阻塞进行响应,从而充当流量控制。

降级#

接触过Spring Cloud和Service Mesh的学生都知道降级的概念。服务之间会存在相互依赖关系。例如,服务A在1秒内达到了数万个QPS。但是,服务B在1秒内不能满足数万个QPS。如何确保服务A以高频率呼叫服务B. B还能正常工作吗?更常见的情况是,当服务A呼叫服务B,服务B无法满足高频呼叫,并且响应时间太长,导致服务A也响应太长时间。链式反应会影响整个依赖链中的所有应用程序,并且需要一种融合和降级的方法。该项目通过设置快速故障策略来融合或降级服务定制。

形状## p>

通常,我们遇到的流量是随机的,不规则的和不受控制的。但是,系统的处理能力通常是有限的。我们需要根据系统的处理能力来塑造流量,即规范化,因此根据我们的需求来处理流量。该项目的局部限流具有流动可塑性的功能,严格控制系统的处理时间间隔。

负载保护#

通常系统运行没有问题,但是当它被大大提升时,发现机器的负载非常高。这时,系统的负载保护对防止雪崩非常重要。该项目提供了相应的保护机制,以平衡系统的入口流量和系统负载,确保系统在其功能内处理大多数请求。平衡系统可以处理的请求以及允许进入的请求。

预览#

收集报告投诉

SnowJena#

什么#

基于令牌桶算法的分布式无锁限流框架支持排污和降级,支持动态配置规则,支持可视化监控,开箱即用。

名词#

当前限制#

当我们设计一个功能,准备上线时,这个功能会消耗一些资源,处理限制为1秒,服务3000 QPS,但如果实际情况遇到QPS高于3000,如何解决呢?该项目提供如果QPS超过某个阈值,系统可以通过直接拒绝或阻塞进行响应,从而充当流量控制。

降级#

接触过Spring Cloud和Service Mesh的学生都知道降级的概念。服务之间会存在相互依赖关系。例如,服务A在1秒内达到了数万个QPS。但是,服务B在1秒内不能满足数万个QPS。如何确保服务A以高频率呼叫服务B. B还能正常工作吗?更常见的情况是,当服务A呼叫服务B,服务B无法满足高频呼叫,并且响应时间太长,导致服务A也响应太长时间。链式反应会影响整个依赖链中的所有应用程序,并且需要一种融合和降级的方法。该项目通过设置快速故障策略来融合或降级服务定制。

形状## p>

通常,我们遇到的流量是随机的,不规则的和不受控制的。但是,系统的处理能力通常是有限的。我们需要根据系统的处理能力来塑造流量,即规范化,因此根据我们的需求来处理流量。该项目的局部限流具有流动可塑性的功能,严格控制系统的处理时间间隔。

负载保护#

通常系统运行没有问题,但是当它被大大提升时,发现机器的负载非常高。这时,系统的负载保护对防止雪崩非常重要。该项目提供了相应的保护机制,以平衡系统的入口流量和系统负载,确保系统在其功能内处理大多数请求。平衡系统可以处理的请求以及允许进入的请求。

预览#