目前我们正在为运行PHP的NGINX(在Centos 7上)创build一个高可用性集群 。 大多数的configuration已经被映射,并且它应该在集群环境中很好地工作。
不幸的是,我们唯一无法解决的问题就是cron作业 (cron作业将执行PHP代码)。 就我所知,cron作业是在每个主机上单独执行的。 这意味着我们要么:
看到解决scheme3将如何帮助我们维护高可用性环境,这是首选的方法。 不幸的是,我们对这些解决scheme并不是非常熟悉,所以我会寻求您的专业知识,帮助我们find适合我们需求的解决scheme。 我们对Linux机器并不是很熟悉(除了NGINX服务器外,整个环境是Windows),对这些机器的使用知之甚less(尽pipe我们已经能够弄清楚了)。
任何帮助,这是非常感谢。
我意识到这个问题之前已经被问过了 ,虽然看起来很过时(2011),而且很多新的解决scheme已经被创build。
为什么不select你的选项(2),但它在执行时会创build一个标志。 cron作业将在所有机器上启动,略有本地时间变化,意味着其中一个首先创build标志; 其他人则看到国旗已经设定好,然后第一批就完成了。
你需要注意标志设置/检查的primefaces性(NFS也是一个选项,带有一个locking文件),尽pipe为了保持这个最小值,也可能有一些值
我使用jenkinspipe理大约140个预定脚本。
jenkins并没有把服务器作为cron的替代品,而是用于持续集成,但是你可以用他来pipe理几乎所有的东西。
这里有一些成功的人(就像我一样)将工作从克朗搬到jenkins
Jenkins和cron之间有一个很好的对比