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

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

  限流是什么意思(抖音限流什么意思?)
  之前在学习的时候也接触不到高并发/大流量这种东西,所以限流当然是没接触过的了。在看公司项目的时候,发现有用到限流(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代码如下:

知识李贺人称什么关于到现在李贺人称什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道李贺人称什么小编也是到网上收集了一些与李贺人称什么相关的信大漠沙如雪燕山月似钩(李贺马诗)大漠沙如雪燕山月似钩(李贺马诗)关注,让诗歌点亮生活译典2020。12。7第305期马诗唐李贺大漠沙如雪,燕山月似钩。何当金络脑,快走踏清秋。李贺(790816),字长吉。河南府福一日无书百事荒芜(一日无书百事荒芜全诗)一日无书百事荒芜(一日无书百事荒芜全诗)在历史的长河之中,古人已逝,而能够永远留存下来的却是那书中隽永清香的内容。当我打开一本书,翰墨飘香,其中不乏夹杂着淡淡的青草味,那是岁月沉淀海伦凯勒的故事(海伦凯勒当年到底经历了什么?)海伦凯勒的故事(海伦凯勒当年到底经历了什么?)海伦凯勒是一个全国性的偶像,她拥有多部书籍戏剧和电影,描绘了她在失明和失聪后努力学习的过程。然而,你可能不知道,她是一名女权主义者,学知识衣冠简朴古风存上一句是什么关于到现在衣冠简朴古风存上一句是什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道衣冠简朴古风存上一句是什么小编也是到网上收集科普下互质数是什么意思举例说明及互质数规律判断法关于到现在互质数是什么意思举例说明及互质数规律判断法这个话题,相信很多小伙伴都是非常有兴趣了解的吧,因为这个话题也是近期非常火热的,那么既然现在大家都想要知道互质数是什么意思举例说科普下互质数是什么意思举例说明互质数规律判断法关于到现在互质数是什么意思举例说明互质数规律判断法这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道互质数是什么意思举例说明互质数古惑仔名字(好听混社会的外号)古惑仔名字(好听混社会的外号)古惑仔中谁最能打?谁的战斗力最强?小编从战斗力来为大家排行一下,看看其中谁的古惑仔中战斗力最强。第十名山鸡(赵山河)陈小春古惑仔里的战斗力排行在B哥的魔兽世界德鲁伊技能(魔兽世界德鲁伊技能列表)魔兽世界德鲁伊技能(魔兽世界德鲁伊技能列表)是魔兽世界TBC版本怀旧服中最具可玩性的职业,但是这个职业的人数却并不算多,从WCL上的数据来看,德鲁伊的玩家数量是全职业倒数第三。由于怎么查微信附近的人聊天记录(如何看对方的聊天记录)怎么查微信附近的人聊天记录(如何看对方的聊天记录)微信现已成为咱们最常用的谈天东西,由于微信的运用率非常高,咱们也常常会拾掇一下微信谈天记载和其他软件的缓存文件来腾出手机空间。但有知识西游记是长篇什么体小说关于到现在西游记是长篇什么体小说这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道西游记是长篇什么体小说小编也是到网上收集了一些与
京郊采摘(京郊采摘好去处)京郊采摘(京郊采摘好去处)在丰台区王佐镇魏各庄村,一道樱桃长廊最近成了网红800米长的道路两侧樱桃树蜿蜒着形成穹顶,一串串红彤彤的樱桃点缀其间,不仅是美食,更是美景。这条樱桃长廊可泳帽的作用(游泳会掉头发吗)泳帽的作用(游泳会掉头发吗)202107231105梦可依床垫游泳时戴泳帽是一种基本配备也是一种基本的礼貌。戴泳帽用于防止耳震和保护头部,防止头发完全浸泡在含氯的水中,可以有效的保泳帽的戴法(女生泳帽怎么戴)泳帽的戴法(女生泳帽怎么戴)202107231105梦可依床垫游泳时戴泳帽是一种基本配备也是一种基本的礼貌。戴泳帽用于防止耳震和保护头部,防止头发完全浸泡在含氯的水中,可以有效的保女士泳帽(女士式游泳衣)女士泳帽(女士式游泳衣)戴泳帽是一种基本配备也是一种基本的礼貌。戴泳帽用于防止耳震和保护头部,防止头发完全浸泡在含氯的水中,可以有效的保护头发,减少池水对头发的损伤,以防止发质受伤丁桂鱼的营养价值(丁桂鱼的营养价值介绍)丁桂鱼的营养价值(丁桂鱼的营养价值介绍)在我们的日常生活中,我们很多人都喜欢吃鱼,大家也常说爱吃鱼的人会变得聪明。丁桂鱼,是重要经济鱼类,不仅口感很好,而且丁桂鱼的营养价值很高,具中国男人平均寿命(2020年中国人平均寿命)中国男人平均寿命(2020年中国人平均寿命)日本人均寿命85。3岁美国80岁印度68。3岁,那么中国呢?人的寿命有多长,是我们一直都十分关心的一个问题每年世界上一些权威组织都会总结大唐西市博物馆(大唐西市博物馆设计解析)大唐西市博物馆(大唐西市博物馆设计解析)欢迎点击关注跟随历史去旅行,和一明一起玩转世界!188西安大唐西市一明的旅行日记188西安大唐西市跟随历史去旅行,我是一明!众所周知,西安曾常州恐龙园票价(哪里有恐龙园特价门票)常州恐龙园票价(哪里有恐龙园特价门票)跟着广电来一次说走就走的旅行,常州恐龙园纯玩三日,恐龙世界的迪士尼,一场欢乐盛宴!202107061939郯城县广播电视台PART017月常州常州恐龙园水世界(常州恐龙园水世界什么时候开始)常州恐龙园水世界(常州恐龙园水世界什么时候开始)乐盛宴!202107061939郯城县广播电视台PART017月常州恐龙园三天100纯玩,一价全含常州恐龙园(白黑)畅玩淹城野生动物清明上河图画(清明上河图有真迹吗)清明上河图画(清明上河图有真迹吗)中国数千年绘画史,丹青无数,但大多数中国人想起的第一幅,定是清明上河图。684个人物95匹畜牲122座房屋29艘船20多家店铺15辆车8顶轿子你能悬崖歌词(李佳薇像天堂的悬崖mv剧情)悬崖歌词(李佳薇像天堂的悬崖mv剧情)737小驴哥哥原创号周深,悬崖之上,度过漫长冬夜,就能迎来黎明的光亮张艺谋的五一档新片悬崖之上在经过3个星期之后,终于实现口碑和票房的双丰收,