将Spring @Async和Spring Websockets用于数据库查询等长时间后台任务有哪些主要区别,优点和缺点?两者是同等使用还是有特殊情况,其中一个更适合?
答案 0 :(得分:2)
相对不常见的长背景任务是@Async
的情况。 Websocket更适合客户端和服务器之间的密集通信,如聊天客户端。
来自Spring纪录片:
最适合WebSocket的是Web客户端和Web应用程序 服务器需要以高频率和低延迟交换事件。 主要候选人包括但不限于申请 金融,游戏,合作等。这些应用都是 对时间延迟非常敏感,也需要交换各种各样的 消息的频率很高。
但是,对于其他应用程序类型,情况可能并非如此。例如,显示突发新闻的新闻或社交Feed 变得可用每次简单的轮询可能完全没问题 一会儿。延迟很重要,但是如果可以接受的话 新闻需要几分钟才会出现。
即使在延迟至关重要的情况下,如果消息量相对较低(例如监视网络故障),则使用long 民意调查应被视为一种相对简单的选择 工作可靠,在效率方面具有可比性(同样 假设消息量相对较低)。
http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html