我有一个提供 API 的 spring 应用程序。现在想使用相同的 spring 上下文开发一个后台作业,我打算为此使用jesque。我按照 jesque 文档来初始化工作人员并将工作排入队列并且工作正常。
我在这里担心的是,worker 作为一个线程在与我的主应用程序相同的 JVM 中运行,而我希望一个 worker 本身就是一个进程,就像我们在resque for rails 中一样,以便我可以轻松地监视和控制它。
另一个优点是,每当应用程序部署/重新启动正在进行时(即终止 JVM 进程并重新启动它),工作人员不会同时被终止,并将继续处理作业。稍后我应该能够优雅地重新启动它们。
我们如何将 jesque 工作人员作为一个进程启动?