我们有一些 CentOS/MySQL VM 需要定期维护活动。Cron 显然是调度的答案,但实际的关机/检查/备份/启动涉及一组特定的事件和一些重要的循环/分支逻辑。机房管理员不想碰这个,所以它落到了 DBA 身上,他们无论如何都不是 shell 专家。
我们使用了几个包含来自 cron 的 PHP 脚本的应用程序,并且也编写/维护了类似的脚本。由于我们公司内部的 PHP 人才比 *sh 多得多,我想知道从有效开发和维护的角度来看,PHP-CLI 是否是我们的更好选择。
是否存在任何缺点/权衡,使这成为坏的主意?
答案1
除了需要确保您的 PHP cli 环境在多台机器上正常运行的时间外,没有任何缺点。
我主要做网络工作,也参与了一些日常 cron 工作。创建 ~/server/cron/whatever1.mylanguage 很不错,它可以搭载我们已经为数据库连接、日志记录等编写的所有站点代码,而不必重新编写所有代码。或者更常见的情况是,根本不编写这些代码,当出现问题时,故障排除会变得复杂。
此外,如果它是您网站代码的一部分,它将得到更好的维护并处于源代码控制中,而许多 cron 永远不会进入。