最近工作上遇到需要时不时重启php服务的情况,于是乎想到利用定时执行脚本的方式重启php进程,于是利用linux写个执行脚本,步骤如下:
第一步:创建一个定时脚本文件cron.sh(文件名随意以.sh结尾)。
参考代码如下(log.txt是个日志文件方便查看是否有输出内容):
echo "supervisorctl restart..." >> /var/www/html/log.txtstart_time=$(date)echo $start_time >> /var/www/html/log.txtecho >> /var/www/html/log.txtsupervisorctl restart allend_time=$(date)echo "supervisorctl end" >> /var/www/html/log.txtecho $end_time >> /var/www/html/log.txtecho >> /var/www/html/log.txt
我这边利用supervisorctl来管理php进程(关于supervisorctl的使用可以查看官方文档),当然也可以利用其他方式。
这里举个例子来简单说明supervisorctl的使用。
立即学习“PHP免费学习笔记(深入)”;
首先需要安装supervisorctl,在终端下执行 yum install -y supervisor,
supervisorct默认安装在/etc/supervisor目录下;
完成后,在/etc/supervisor 路径下有个配置文件supervisord.conf,打开后在最后有个[include]后配置一下files如下:
files = /etc/supervisor/conf.d/*.conf
然后就可以在/etc/supervisor/conf.d目录下创建自己的配置文件;
例如创建文件test.conf(我这边是php laravel框架执行的一个消费任务队列)文件内容配置如下:
[program:rabbitmq-comsumer-1]process_name=%(program_name)s_1command=php /var/www/html/app/artisan rabbitmq:consumer 1autostart=trueautorestart=trueuser=rootnumprocs=1redirect_stderr=truestdout_logfile=/var/www/html/app/storage/logs/rabbitmq-comsumer-log-1.log
第二步:其次编写定时任务内容,在终端控制台输入 vim /etc/crontab 回车;在文件里写入如下代码:
0 */2 * * * root /var/www/html/cron.sh
注:0 */2 * * *(这是定时任务执行语法,我这边是每2小时执行,也就是0:00,2:00,…自动执行;相关语法请百度查阅)
第三步:保存文件,然后使其生效(这一步很重要!)执行如下命令:
crontab /ect/crontab
最后可以使用以下命令查看修改后的结果,如果看到出现 0 */2 * * * root /var/www/html/cron.sh 则说明已经生效:
crontab -l
总结:以上就是利用linux定时执行任务脚本来重启php服务,只要是不要求立即执行,这样就不用人工手动去执行命令,一劳永逸。
更多精彩内容请关注创想鸟其它相关文章!
以上就是linux定时执行php启动任务脚本(步骤分析)的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/138913.html
微信扫一扫
支付宝扫一扫