教育房产时事环球科技商业
投稿投诉
商业财经
热点动态
科技数码
软件应用
国际环球
晨报科学
新闻时事
信息智能
汽车房产
办公手机
教育体育
生活生物

限流是什么意思(抖音限流什么意思?)

  限流是什么意思(抖音限流什么意思?)
  之前在学习的时候也接触不到高并发/大流量这种东西,所以限流当然是没接触过的了。在看公司项目的时候,发现有用到限流(RateLimiter),顺带了解一波。一、限流基础知识介绍
  为啥要限流,相信就不用我多说了。
  比如,我周末去饭店吃饭,但是人太多了,我只能去前台拿个号,等号码到我的时候才能进饭店吃饭。如果饭店没有限流怎么办?一到饭点,人都往里冲,而饭店又处理不了这么多人流,很容易就出事故(饭店塞满了人,无路可走。饭店的工作人员崩溃了,处理不过来)
  回到代码世界上也是一样的,服务器能处理的请求数有限,如果请求量特别大,我们需要做限流(要么就让请求等待,要么就把请求给扔了)
  在代码世界上,限流有两种比较常见的算法:
  令牌桶算法
  漏桶算法
  1.1 什么是漏桶算法
  比如,现在我有一个桶子,绿色那块是我能装水的容量,如果超过我能装下的容量,再往桶子里边倒水,就会溢出来(限流):
  我们目前可以知道的是:
  桶子的容量是固定的(是图上绿色那块)
  超出了桶子的容量就会溢出(要么等待,要么直接丢弃)
  OK,现在我们在桶子里挖个洞,让水可以从洞子里边流出来:
  桶子的洞口的大小是固定的,所以水从洞口流出来的速率也是固定的。
  所以总结下来算法所需的参数就两个:
  桶子的容量
  漏水的速率
  漏桶算法有两种实现:
  不允许突发流量的情况:如果进水的速率大于出水的速率,直接舍弃掉多余的水。比如,我的桶子容量能装100L,但我的桶子出水速率是10L/s。此时,如果现在有100L/s的水进来,我只让10L的水进到桶子,其余的都限流。(限定了请求的速度)
  允许一定的突发流量情况:我的桶子能装100L,如果现在我的桶子是空的,那么这100L的水都能进我的桶子。我以10L/s的速率将这些水流出,如果还有100L的水进来,只能限流了。
  经过上面的分析我们就知道:
  漏桶算法可以平滑网络上的突发流量(因为漏水的速率是固定的)
  1.2 什么是令牌桶算法
  现在我有另外一个桶子,这个桶子不用来装水,用来装令牌:
  令牌会一定的速率扔进桶子里边,比如我1秒扔10个令牌进桶子:
  桶子能装令牌的个数有上限的,比如我的桶子最多只能装1000个令牌。
  每个请求进来,就会去桶子拿一个令牌
  比如这秒我有1001个请求,我就去桶子里边拿1001个令牌,此时可能会出现两种情况:
  桶子里边没有1001个令牌,只有1000个,那没拿到令牌的请求只能被阻塞了(等待)
  桶子里边有1001个令牌,所有请求都可以执行。
  令牌桶算法支持网络上的突发流量
  **漏桶和令牌桶的区别:**从上面的例子估计大家也能看出来了,漏桶只能以固定的速率去处理请求,而令牌桶可以以桶子最大的令牌数去处理请求二、RateLimiter使用
  RateLimiter是Guava的一个限流组件,我这边的系统就有用到这个限流组件,使用起来十分方便。
  引入pom依赖:
  RateLimiter它是基于令牌桶算法的,API非常简单,看以下的Demo:
  我们可以从结果看出,每秒只能执行三个:
  三、分布式限流
  RateLimiter是一个单机的限流组件,如果是分布式应用的话,该怎么做?
  可以使用Redis+Lua的方式来实现,大致的lua脚本代码如下:
  Java代码如下:

数学知识为什么一次函数平移是左加右减关于到现在为什么一次函数平移是左加右减这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道为什么一次函数平移是左加右减小编也是到网上数学知识平行四边形是正方形对吗关于到现在平行四边形是正方形对吗这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道平行四边形是正方形对吗小编也是到网上收集了一些与数学知识物体平移后形状方向不变对吗关于到现在物体平移后形状方向不变对吗这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道物体平移后形状方向不变对吗小编也是到网上收集数学知识平行四边形的特点是什么关于到现在平行四边形的特点是什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道平行四边形的特点是什么小编也是到网上收集了一些与数学知识直角的特点是什么关于到现在直角的特点是什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道直角的特点是什么小编也是到网上收集了一些与直角的特点是数学知识小学数学等式的性质关于到现在小学数学等式的性质这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道小学数学等式的性质小编也是到网上收集了一些与小学数学九个复韵母是什么(9个复韵母怎么读)九个复韵母是什么(9个复韵母怎么读)一年级拼音知识重难点一汉语拼音中最重要的。(记住23个声母24个韵母和16个整体认读音节。)要求每个孩子都能背下来,能默写以及打乱顺序能听写。1九个复韵母是什么(小学一年级啊喔鹅拼音字母)九个复韵母是什么(小学一年级啊喔鹅拼音字母)声母共23个bpmfdtnlgkhjqxzhchshrzcsyw韵母共23个单韵母6个分别是aoeiu复韵母9个分别是aieiuiaoo知识朔气传金柝寒光照铁衣的意思是什么关于到现在朔气传金柝寒光照铁衣的意思是什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道朔气传金柝寒光照铁衣的意思是什么小编也知识朔气传金柝寒光照铁衣的意思关于到现在朔气传金柝寒光照铁衣的意思这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道朔气传金柝寒光照铁衣的意思小编也是到网上收集科普下历史上的今天07月31日关于到现在历史上的今天07月31日这个话题,相信很多小伙伴都是非常有兴趣了解的吧,因为这个话题也是近期非常火热的,那么既然现在大家都想要知道历史上的今天07月31日,小编也是到网上
科普下财政的三个作用及表现及财政的三大职能关于到现在财政的三个作用及表现及财政的三大职能这个话题,相信很多小伙伴都是非常有兴趣了解的吧,因为这个话题也是近期非常火热的,那么既然现在大家都想要知道财政的三个作用及表现及财政的科普下财政的三个作用及表现财政的三大职能关于到现在财政的三个作用及表现财政的三大职能这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道财政的三个作用及表现财政的三大职能小击鼓传花规则(击鼓传花规则及玩法)击鼓传花规则(击鼓传花规则及玩法)篝火晚会趣味小游戏篝火晚会不仅可以让你放松心情,缓解压力还可以将大家的热情推至最高点。在篝火氛围的渲染下,晚会趣味小游戏将现场再度升温,让大家在游陈述句改双重否定句(双重否定句怎么改)陈述句改双重否定句(双重否定句怎么改)双重否定句是用两个否定词来表达肯定意思的句子。把陈述句改为双重否定句是小学语文常考的一个重点,怎么改?掌握方法就简单了。陈述句改成双重否定句方杉树种类(常见的杉树有几种)杉树种类(常见的杉树有几种)杉树的树干纹理顺直耐腐防虫,可以用于建筑桥梁电线杆造船家具和工艺制品等,且它的生长速度快,只要10年就可成材,是很好的树种之一。那么,杉树苗多少钱一棵?灭火器的种类(灭火器多少钱一瓶)灭火器的种类(灭火器多少钱一瓶)灭火器真的是发生火灾能救命的一大法宝,在我们生活中也随处可见,商场里,家里的楼道里等等,但是我们很多人是不会用的。灭火器的分类灭火器的种类很多,按其牧羊犬种类(牧羊犬有哪种类型)牧羊犬种类(牧羊犬有哪种类型)牧羊犬千百年来被用作负责放羊畜牧的犬种,负责警卫保护家畜不受侵袭。而牧羊犬的种类繁多,下边盘点一下最常见的的10种牧羊犬1。德国牧羊犬外观威猛警觉性高韩国风俗媚娘(韩国stylenanda官网)韩国风俗媚娘(韩国stylenanda官网)异人种风俗娘评鉴手册在上星期开播了有关人偶娘和光小精灵的內容,一样脑洞大的故事情节令人意犹未尽,乃至许多人去专业看过动漫漫画,发觉上半身科普下石油是混合物吗石油的成分是哪些关于到现在石油是混合物吗石油的成分是哪些这个话题,相信很多小伙伴都是非常有兴趣了解的吧,因为这个话题也是近期非常火热的,那么既然现在大家都想要知道石油是混合物吗石油的成分是哪些,小具有中国特色的东西(代表中国传统文化的东西)具有中国特色的东西(代表中国传统文化的东西)中华传统文化,是中华文明成果根本的创造力,是民族历史上道德传承各种文化思想精神观念形态的总体。中华传统文化是以孔子为代表的儒家文化为主体荷兰猪怎么养(荷兰猪笼子推荐)荷兰猪怎么养(荷兰猪笼子推荐)荷兰猪怎么养,很多人一看到猪就以为真的是猪,其实荷兰猪并不是猪哦,它的俗名是豚鼠哦,荷兰猪小巧可爱,非常吸引小朋友,而且家里又不需要占据太多的空间,所