我们目前正在为运行PHP的Nginx(在Centos 7上)创建高可用性集群.大多数配置已经映射,它应该在群集环境中很好地工作.
不幸的是,我们唯一不能解决的问题是cron jobs(cron作业将执行PHP代码).据我所知,cron作业分别在每个主机上执行.这意味着我们要么:
>没有一个完整的高可用性环境,在单个服务器发生故障时,另一个服务器接管并且一切仍然像以前一样工作(尽管速度较慢).
>我们运行每个cron作业并将结果保存在数据库中以确定它是否已经运行.这不是一个可行的解决方案,因为我们的一些cron作业可能需要数小时才能运行 – 这些需要在下一个工作日之前执行.
>我们找到了某种解决方案,可以执行高可用性的cron作业.
研究
看到解决方案3如何帮助我们维护高可用性环境,这是首选方法.不幸的是,我们对这些解决方案并不十分熟悉,因此我寻求您的专业知识,帮助我们找到适合我们需求的解决方案.我们对Linux机器不是很熟悉(除了Nginx服务器之外整个环境都是Windows)并且对使用这些机器知之甚少(尽管到目前为止我们已经能够解决这个问题).
选项
> Dkron
> Chronos
>这使用多个其他实用程序来操作,包括一个实际的数据库(不理想,但可以工作)
> Rundeck
>似乎提供了许多功能,可能是此列表中最好的产品
> Rcron
>除了基于Golang之外,我对此并不太了解.
>自定义脚本:How to make cronjobs high available?
>其他选择??? – 如果您找到一些,请提供其他选项,我会在此处提供
问题
>您对不同选项的专家意见或建议是什么?
>您使用不同选项(优点/缺点)的经历是什么?
>您认为我们在基础设施中使用哪些选项? (如果需要有关我们基础设施的其他信息,请告知我们)
笔记
对此有任何帮助非常感谢.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。