请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

高并发这些方法能用在哪些业务?一定比不并发业务快吗?有哪些场景?

正在回答 回答被采纳积分+3

1回答

悟空 2019-10-20 11:50:16

可以用在很多场景,比如携程需要同时获取10个航空公司的“北京到上海”的班次信息,肯定是需要用并发同时向10个航空公司发出请求的,比不并发要快。而且10个航空公司可能还有1个一直不返回数据,不用并发的话,就会陷入等待,体验很差,如果用并发,那么就不会影响到其他9个航空公司的正常结果。

类似的场景还有很多,比如下载的时候,用并发可以提高下载速度;比如生成excel文件的时候,用并发可以加快文件的处理速度。

0 回复 有任何疑惑可以回复我~
  • 在系统中每个航空公司有对应的接口业务。。包括发送不同的请求参数,不同的验签方式,返回数据格式统一处理。这些代码块都是独立的接口。。。都是单线程的。。不可能说把业务拆了,并发请求,并发返回处理。。每个航哥公司的业务处理逻辑都不一样啊
    回复 有任何疑惑可以回复我~ 2019-10-20 13:41:55
  • 悟空 回复 提问者 weixin_慕尼黑2067412 #2
    虽然每个航空公司的业务处理逻辑都很不一样,但是它们本质都是在做同一件事,就是“查询航班信息”,这是接口的抽象。虽然对于方法的具体实现,是各不相同的,但是这都是整个查询逻辑的一部分,虽然每个接口的内部执行是单线程的,但是这10个接口(对应10个航空公司)是同时并行执行的。这里的并行指的是同时向10个航空公司发起请求,但是请求的内容和处理逻辑是允许不一样的,最后经过数据处理后,可以很快汇总10个公司的数据。
    如果这里不使用并行,那就是等第一个航空公司的信息返回并处理后,再找第二个公司请求数据,那就太慢了。
    回复 有任何疑惑可以回复我~ 2019-10-20 14:19:12
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信