建立接口集群和队列来达到高并发的概念这句话到底什么意思?大牛可以举个例子分析吗?本人大二新手

沫子酱 发布于 2019/08/01 22:42
阅读 349
收藏 0

开源之夏第三届火热来袭,高校学生参与赢万元奖金!>>>

建立接口集群和队列来达到高并发的概念这句话到底什么意思?可以举个例子分析吗?本人大二新手

加载中
0
练打字的
练打字的

集群可以解决单点性能问题啊,队列是为了不阻塞接口,与后面的逻辑隔离达到消峰抗量目的;

练打字的
练打字的
回复 @前端大师傅 : 还有阻塞往往是具体业务接口内部高耗时导致的,虽然async了但是由于请求量很大你的任务线程池也会被打满,队列的话可以避免这一点,就是会有消费延迟,还是的看场景;
练打字的
练打字的
回复 @前端大师傅 : 队列异步消费还是async注解看场景和应用了,async背后也是线程池啊,线程池也是提交队列啊,本身没有多大区别;还是的看场景和业务;
ArchitectureMaster
ArchitectureMaster
该评论暂时无法显示,详情咨询 QQ 群:点此入群
0
红薯官方
红薯官方

就是就是分布式API服务和MQ队列处理请求。

0
gammey
gammey
该评论暂时无法显示,详情咨询 QQ 群:点此入群
0
康复患者
康复患者

类似于中午去食堂吃饭,多一个打饭阿姨,打饭速度就提升一下

0
ArchitectureMaster
ArchitectureMaster

四楼比喻不完整,只解释了集群,除了多了打饭的阿姨之外,还要先来后到排队打饭。这就是队列RabbitMQ。

接口集群的意思是分布式部署加统一网关输出,就是二楼所说的API Gateway(网关)加上MQ排队处理请求。并发后串行队列出这才是最快的,而不是单纯的分布式处理。

并发处理并不能拿到1+1等于二,这个是个人都知道。尤其是日常的工作中两个人一起做一件事如果要达到一个人的两倍基本不可能,因为人与人之间的配合是低于人内部的配合。这样就有了队列串型处理。

就好像串口的SATA硬盘高于PATA并口硬盘。并行需要解决的是大量并发时容错问题。也就是MQ大行其道的原因。

2楼+4楼的结合是正解。

练打字的
练打字的
正确,赞
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部
返回顶部
顶部