关于 cron 作业的最佳实践

关于 cron 作业的最佳实践
*/2 * * * * /etc/cronjobs/check_nginx.sh
*/2 * * * * /etc/cronjobs/check_php-fpm.sh
*/2 * * * * /etc/cronjobs/check_named.sh
*/2 * * * * /etc/cronjobs/check_vsftpd.sh
*/2 * * * * /etc/cronjobs/check_mariadb.sh

嘿伙计们,这些行是检查某些服务是否启动并正在运行的脚本,但我不确定 2 分钟是否足以保证稳定性,或者对于小型 vps(512mb ram,1 vCPU)来说是否太多了。

当我为它们全部设置 */2 时,它们会同时执行吗?我知道这有点像队列,但我不确定这是否是一种好的做法。

感谢您的关注!

答案1

它们将或多或少地同时执行(考虑到它们在 1 CPU 机器上)。如果您担心它们在检查器到达之前会停机长达 2 分钟,请考虑在类似 Supervisord / systemd / init 的机制下运行它们,或者在它们死机时立即检测并重新启动它们的其他机制下运行它们。

如果您担心 2 分钟的停机时间,这意味着您正在运行某种生产负载,其中 512M /1CPU 确实显得相当拥挤。

相关内容