如何编写java程序来启动远程机器中的程序?

时间:2015-05-28 11:15:53

标签: java sockets networking cmd

我在3台驻留在同一网络上的Windows计算机上运行3个Web爬虫(Java程序)实例。

我想编写一个监控所有3个Web爬虫程序的主java程序,如果有任何程序终止,则会重新启动该特定程序。

我能够将客户端计算机上的java程序绑定到套接字并监视来自服务器的套接字,但是如果程序终止,我也不知道如何重新启动程序。 我甚至没有丝毫想法,我应该如何实现这一目标。任何指导都表示赞赏。

如何远程重启客户端应用程序?

1 个答案:

答案 0 :(得分:1)

显然,您需要远程服务器上的另一个组件来运行死Java应用程序。

您可以利用PsExec在发现死机时运行远程抓取工具。

https://technet.microsoft.com/de-de/sysinternals/bb897553.aspx

tasklist命令可以列出远程计算机上的任务,因此您可以创建自己的" nagios" -very-light-edition。

tasklist /S computer应列出远程系统上的任务"计算机"。

如果这是一个严肃的,专业销售的,不仅仅是内部解决方案,您需要投资远程任务的控制程序,并可能决定在应用程序服务器或类似的运行时内运行爬虫。这样,您可以更好地控制当前运行的版本等。更新的分发将更加容易,您可以使用众所周知的监视系统来远程检查爬网程序的状态。