性能优化(一)请求合并提升性能--多线程技术 (高并发场景)

请求合并提升性能--多线程技术
1.请求合并描述
什么是请求合并?
为什么要使用请求合并技术?

2.设计思路
如何实现一个请求合并?
设计思路是什么?

3.具体实现
使用多线程技术写出请求合并的功能

4.体系拓展
如Hystrix类似功能演示SpringCloud最新状态描述

引言:现在互联网公司主流开发设计,如网易课堂,爱奇艺等 ,一般大致都是类似的。
vue、RN、Flutter、Ajax异步加载,跨域(jsonp跨域),服务多系统化,redis,消息队列,分库分表,分布式,平台化等。

系统架构设计:

redis缓存使用:

如:爱奇艺影片详情页或网易课程详情页,电商商品详情页等等

影片详情信息

接口访问:

热点查询增加 redis缓存

批量查询模式可提高查询速度:

请求合并优缺点:
弊端:
启用请求的成本是在执行实际逻辑之前增加了延时。(如10ms,时间成本增加)
如:如果平均仅需5ms的执行时间,放在一个10ms的做一次批处理的合并场景下,则在最坏的情况下,执行时间可能成为15ms。(不适合 低延时的RPC场景,低并发场景)

场景:
如果很少有超过1或2个请求会并发在一起,则没有必要使用。
一个特定的查询同时被大量使用,并且可以将几十个甚至数百个请求批量处理在一起,那么如果能接受处理时间变长一点点,用来 减少网络连接数 ,这是值得的(如:数据库,http接口等)。

posted @ 2019-06-23 11:31  easymoneySniper  阅读(808)  评论(0编辑  收藏  举报