我的要求是处理 java 类中的长时间运行方法,当用户提交按钮时调用该方法。
我需要做一些比较逻辑,这需要很长时间来处理,我需要一个建议是我应该使用消息队列还是我应该使用 Timer/Scheduler,它会在每“n”分钟/小时内调用一次代码并执行在不同的线程中处理。
什么是最好的方法,在什么情况下我会使用?
谢谢
我的要求是处理 java 类中的长时间运行方法,当用户提交按钮时调用该方法。
我需要做一些比较逻辑,这需要很长时间来处理,我需要一个建议是我应该使用消息队列还是我应该使用 Timer/Scheduler,它会在每“n”分钟/小时内调用一次代码并执行在不同的线程中处理。
什么是最好的方法,在什么情况下我会使用?
谢谢
至于 JMS
如果您在第一种方法中不使用数据库:JMS 支持开箱即用的持久消息,并且队列通过缓冲消息将客户端和工作人员解耦。这简化了系统维护:您可以在不中断客户端的情况下使用工作人员更新应用程序。
更新
消息发送者和接收者被消息解耦(它是异步的)。因此,接收器中的处理不会因用户界面中的任何操作而停止。
例如
onMessage
方法中的 MDB如果您将检查实现为 AJAX 调用,则用户不会看到您实际上是在轮询。