在多台服务器上传播时,如何pipe理drupal的cron?

什么是停止机器战斗的最好方法,同时保持它们的一致性,以保持简单并减less单点故障?

看看这篇文章 ,build议使用哈德森(现在jenkins)的工作。

摘抄:

对于远程作业,Hudson可以使用SSHlogin到系统,复制自己的运行时,并在远程系统上运行任何你想要的。 这意味着无论群集中有多less个服务器需要预定作业,Hudson都可以从一台服务器上安排,运行和logging这些作业。 Hudson可以根据哪些机器已经忙碌而dynamic地分配作业,或者可以将作业绑定到特定的盒子。

干杯

最好的方法是在脚本中维护某种全局locking。 这个锁应该可以从每个服务器访问,所以在这里有两个明显的select:使用数据库(你已经拥有它)和使用分布式文件系统(你可能没有)。 当然,你将不得不修改脚本的行为来设置和删除锁。