CentOS Nginx crontab 定时执行PHP代码命令任务(tp5.1 tp6 EasyTask) 每天重启执行PHP自定义命令

网友投稿 794 2022-11-15

CentOS Nginx crontab 定时执行PHP代码命令任务(tp5.1 tp6 EasyTask) 每天重启执行PHP自定义命令

CentOS Nginx crontab 定时执行PHP代码命令任务(tp5.1 tp6 EasyTask) 每天重启执行PHP自定义命令

某个网站,需要执行自己写的定时任务,需要定时执行PHP命令

例子:TP5.1 安装插件 PHP常驻内存定时器 easy-task任务

PHP常驻内存定时器 ​​easy-task/easy-task​​​—— ​​EasyTask: PHP常驻内存多进程任务管理器,支持定时任务(PHP resident memory multi-process task manager, supports timing tasks)​​

easy-task任务设置好定时执行任务后会每天自动执行事务,但是总是执行一段时间后,发现在执行的事务没有执行,

一、猜测:

可能执行的事务有太多数据,进程不能按时关闭,卡内存,过一段时间慢慢过多,就造成了执行不了。

二、解决的办法:

测试:发现每次用shell命令重启这些定时任务,重启那段时间定时任务都正常,过段时间就又不行

解决办法思路:如果每天都自动把这些定时重启一次(相当用shell命令重启),那就解决了吗?

三、设置

3.1 运行定时任务

查看crontab定时任务列表:cat /var/spool/cron/root查看crontab定时任务位置:cd /var/spool/cron/

09 07 * * * cd /data/think timedtasks stop force >> /data/2>&110 07 * * * cd /data/think timedtasks start >> /data/2>&1

/data/:自己网站根目录,是绝对路径,不是相对路径

easy-task任务 执行命令

php think task start  启动命令 php think task status 查询命令 php think task stop   关闭命令 php  think  task  stop  force   强制关闭命令

/data/记录上面两个命令的日志,看看运行情况

错误:/bin/sh: php: command not found

如果/Task/Log/1.txt中有这个错误:说明没有系统PATH没有配置或配置不全

解决方法:

ln -s /usr/local/php56/bin/php /usr/bin/php或ln -s /usr/local/php/bin/php /usr/bin/php

/usr/local/php56/bin/php 是服务器PHP安装路径,这些情况多数是服务器安装多个PHP版本

ln -s /usr/local/php/bin/php /usr/bin/php 这种是服务器只安装了一个PHP版本

查看easy-task任务日志路径:/data/wwwroot/default/xxx-/runtime/Task/Log

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:ios app上架苹果应用平台(测试开发、申请开发/正式证书,申请APPID,上架APP)最终版
下一篇:TP5.1 在模板中用原生PHP数据库查询
相关文章

 发表评论

暂时没有评论,来抢沙发吧~