RateLimiter是guava提供的基于令牌桶算法的实现类,可以非常简单的完成限流特技,并且根据系统的实际情况来调整生成token的速率。通常可应用于抢购限流防止冲垮系统;限制某接口、服务单位时间内的访问量,譬如一些第三方服务会对用户访问量进行限制;限制网速,单位时间内只允许上传下载多少字节等。 ...
分类:
其他好文 时间:
2020-02-12 14:52:44
阅读次数:
193
常用算法有三种:计数器算法、漏斗桶算法、令牌桶算法,市面上最常用的是最后一个 第一个:计数器算法 他维护的是单位时间内的最大请求量,因此极端情况可能造成服务抖动 第二个:漏斗桶算法,这种算法保护了后端的微服务,但是会可能造成微服务网关压力激增 第三种:令牌桶算法 令牌桶算法相对于漏斗桶算法,其实就是 ...
分类:
编程语言 时间:
2020-02-12 00:23:36
阅读次数:
110
与Nginx相比,zuul除了作为网关,他还可以做一些其他的功能,如下图中写的那些(还包括限流),在实际项目中,所提到的zuul其实是用zuul的api开发的一个zuul的项目,然后部署在一台服务器上,在该项目中可以实现很多zuul支持的功能。 加入zuul之后的项目架构如下 以下为zuul的介绍 ...
分类:
其他好文 时间:
2020-02-12 00:23:22
阅读次数:
96
前面我们已经完成了通过JWT的认证和授权的改造,可以看到我们的代码中没有认证和授权的过滤器(Filter)了,基本上由SpringSecurity的过滤器来接管了,接下来我们来看一下怎么在SpringSecurity的过滤器链上加上我们自己的逻辑,比如日志和限流。 1、在SpringSecurity ...
分类:
其他好文 时间:
2020-02-10 09:51:04
阅读次数:
106
问题背景 有一个需求,需要进行限流,选择使用的Guava RateLimiter,但是发现在限流方面,还是存在一些问题(单机),特别是当瞬时访问量特别大的时候, 请看下面一个代码,应该输出什么结果? package cn.ganlixin.guava; import com.google.commo ...
分类:
其他好文 时间:
2020-02-09 16:59:12
阅读次数:
63
在第i个点只能选A[i]次的情况下,能选出多少条1 n的最短路 Solution 我们造出最短路DAG,然后对每个点拆点限流,跑最大流即可 双向边警告!(有悖直觉 我的模板丑的不行了,我得去改造模板了 ...
分类:
其他好文 时间:
2020-02-09 11:36:56
阅读次数:
77
https://blog.csdn.net/qq_32447301/article/details/86659474 一、限流操作: 为什么限流,是防止用户恶意刷新接口,因为部署在外部服务器,并且我们采用websocket的接口实现的,公司没有对硬件升级,导致程序时长崩溃,为了解决这个问题,请教公司 ...
分类:
其他好文 时间:
2020-02-09 09:54:30
阅读次数:
57
题目链接:https://vjudge.net/problem/POJ-2516 思路:对于每种商品跑最小费用最大流,如果所有商品和人一起建图跑,O(v^2*m)数量级太大,会超时。 把店里的商品拆点,入和出之间是商品库存量,起到限流作用。 源点->人对该商品的需求->库存点入->库存点出->汇点 ...
分类:
其他好文 时间:
2020-02-04 12:26:42
阅读次数:
79
在Spring Cloud微服务体系中,由于限流熔断组件Hystrix开源版本不在维护,因此国内不少有类似需求的公司已经将眼光转向阿里开源的Sentinel框架。而以下要介绍的正是作者最近两个月的真实项目实践过程,这中间被不少网络Demo示例级别水文误导过,为了以正视听特将实践过程加以总结,希望能够帮到有类似需要的朋友!
分类:
编程语言 时间:
2020-02-04 10:57:43
阅读次数:
90
在前面的博客中,我给大家演示了使用 @SentinelResource 定义资源完成限流的例子, 下面就从源码解析开始,看下SentinelResource是如何实现限流的,以及@SentinelResource提供了哪些功能,支持哪些属性。 @SentinelResource可以说是Sentine ...
分类:
其他好文 时间:
2020-02-02 21:54:00
阅读次数:
115