1

我有多个服务器通过 cron-tab 调度在 JAVA 中运行相同的后端进程。

早些时候,我只有一台服务器,用来安排所有作业。这更容易管理。

现在随着服务器数量的增加和在具有相同代码库的所有服务器上运行相同的进程,我想在所有机器上安排相同的 cron 作业。

我遇到了问题,因为如果有一次更改,我必须面对很多麻烦并进行手动更改/更新所有服务器。

谁能告诉我一些从一个共同点管理多台服务器上的调度的方法?是否有任何工具/库/API 等来处理这种情况?

截至目前,我正在所有服务器上更新/复制(使用 SCP)JAR,然后通过单独登录到每个服务器来重新启动所有进程。

到目前为止,我更喜欢如果我不必更改我的 JAVA 代码来管理这个(在日志运行中,我可以想到那个)。

但是,如果我可以创建一个小型 JAVA 应用程序(使用 Quartz)或者甚至是一个 shell 脚本来处理调度,我会去做。

我想明确一点,在所有服务器上更新 JAR 不是我的问题,我正在为此设置构建脚本(ANT)。

我关心的是所有服务器的通用调度代码。

有没有办法在一台服务器上安排作业,在远程服务器上启动作业?如果发生这种情况,我只需要在一台服务器上管理调度。我也不需要担心时钟同步问题..

4

1 回答 1

1

您可以创建一个文本文件,其中包含 crontab 条目,并且当您在每个服务器中部署 jar 文件时,您也可以使用 ant 通过运行命令同时更新 crontab crontab mycrontab.txt

于 2013-04-22T06:41:54.963 回答