1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 如何在Linux上定期定期执行命令脚本 – PHP基础 – 前端 php 模板转字符串

如何在Linux上定期定期执行命令脚本 – PHP基础 – 前端 php 模板转字符串

时间:2021-01-23 19:29:31

相关推荐

如何在Linux上定期定期执行命令脚本 – PHP基础 – 前端 php 模板转字符串

在Linux上执行定时任务的场景还是很多的,比如说大家要:

定时进行日志文件切割;

定时同步服务时间;

定时备份重要数据;

定时执行任务等。

Linux服务器上要实现定时任务,方式有很多,比如说:cron、anacron、sleep等。那这几种之间有何区别及该选哪种呢,结合偶的经验谈谈偶的看法以供大家参考。

1、cron(crond)

crond是Linux自带的一个守护进程,利用它来重复执行指定的任务,时间周期可以按分钟、小时、天、月、周来执行,现实大家主要也就是靠它来执行定时任务。

这里需要注意的是,crontab是crond进程依懒的任务列表文件(对应配置文件在:/etc/crontab 中,不过系统中也有crontab命令,通过这个命令大家可以编辑任务清单),大家将定时任务记录在crontab中,任务的执行靠的还是crond守护进程。

2、anacron

anacron(对应配置文件在:/etc/anacrontab 中)可以理解为是cron的一种补充,但两者定位不同。cron定位是7×24小时不间断的计划任务执行者,而anacron是用来处理非7×24小时运行的Linux系统上的crontab的。有点绕口,简单说就是,假设一台服务器每周六周日是关闭的,而crontab中有几条是在周六周日执行的,此时anacron就能发挥作用了。anacron在启动后会去检查关机期间哪些任务应该执行却没有执行到的crontab任务,找到这些任务,执行完,然后anacron就停止了。

其实anacron依懒于crontab,anacron能执行也是靠crontab来运行的。

anacron对于一般用户基本上用不到!

3、sleep

还有一种方案是通过sh脚本来执行while(true) + sleep操作,以此来模拟定时任务。这种常见于一些PHP脚本模拟“守护进程”效果,执行完一段代码后,休眠指定时间后再次执行。

综上,在实际操作中,大家实现定时任务99%的情况下都是通过crontab这个命令和 /etc/crontab 这个文件来设置定时任务的,而定时任务的执行是由Linux自带的crond守护进程来执行的。

以上就是偶的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 偶是科技领域创作者,十年互联网从业经验,欢迎关注偶了解更多科技知识!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。