springboot小技巧(五) 使用多线程提高Restful接口性能

《springboot小技巧(五) 使用多线程提高Restful接口性能》
1>传统单线程模式,同步处理:一个请求负责请求开始到请求结束返回结果,服务器能接受的请求数量受tomcat线程数量限制
2>采用异步处理模式:tomcat主线成接受到请求后,调用副线程处理剩下的逻辑,主线程空闲出来处理两外的请求,这样服务器吞吐量将会大大提高

采用Callable异步处理请求

《springboot小技巧(五) 使用多线程提高Restful接口性能》
《springboot小技巧(五) 使用多线程提高Restful接口性能》
《springboot小技巧(五) 使用多线程提高Restful接口性能》
可以看到:采用异步方式处理请求时,主线程接收请求和返回几乎是同步的,主线程空闲出来,可以处理更多的请求,副线程处理业务逻辑,当处理完之后,再交由主线程返回结果

使用DeferredResult异步处理Rest服务

《springboot小技巧(五) 使用多线程提高Restful接口性能》
现在的业务场景是:应用1接收到http请求,应用1发送主题消息,应用2监听到消息之后完成逻辑处理,并将返回结果封装为另外的主题消息发送到消息队列,应用1通过另外的线程监听此消息,解析消息并将结果返回,此时Callable就满足不了需求了,那就得使用DeferredResult

DeferredResult的使用待更新…

    原文作者:奔跑者runner
    原文地址: https://blog.csdn.net/s297485987/article/details/97613831
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞