我们的服务器 Web 应用程序将处理 REST API 请求所请求的作业。
理想情况下,如果服务器在作业期间死机(即:拔掉插头),作业应该在启动时恢复或重新启动。
处理这些作业的一种非常方便的方法是在一个单独的线程中使用 Java 5 中的一些并发实用程序类。唯一的问题是,如果出现故障,您需要写下作业详细信息并创建一个读取这些详细信息的进程在启动并恢复工作。这似乎很痛苦。
另一种方法是使用用户发出请求的队列,我们写入队列,然后从队列中读取并执行作业,并且仅在作业完成时删除消息。这使得在启动时恢复作业变得容易,因为服务器将在启动时从队列中读取并恢复进程。
有没有更好的方法来解决这种情况?