如何将Java长时间运行的进程分发到远程服务器

时间:2011-09-13 18:17:05

标签: java database listener

我的php web服务器接收请求并需要启动一个运行时间在30秒到5分钟甚至更长时间的java程序。这个漫长的过程需要在我的局域网中的可用服务器上分发。

我需要什么:

  • 作业队列(在数据库中完成)

  • 数据库手表。获得有关新工作或已完成工作的通知(以便在队列中开始其他工作)

  • 在远程可用计算机上启动java进程。

似乎它需要是一个数据库监视,因为我需要评估哪个远程计算机可用,而且数据库存储过程不能轻易实现。

使用JAVA以独立于操作系统的方式实现此目的的最佳或至少是一种好方法。

我想我可以使用FileWatch管理文件夹中的队列,但这似乎是史前的。

由于

1 个答案:

答案 0 :(得分:2)

我会使用JMS队列。您将任务/消息添加到队列,下一个可用进程接受任务,执行任务并将任何结果发送回另一个队列或主题。这支持透明的负载平衡,如果进程失败,您可以重新启动任务。不需要民意调查。