基于 Supervisor 运行控制台命令脚本,运行完毕 1 次之后,间隔 60 秒后再次运行控制台命令脚本的实现
1、配置文件 \channel-pub-api\build\c_files\etc\supervisord.d\yii-qq-transaction-video-sync.ini
1 2 3 4 5 6 7 | [program:yii-qq-transaction-video-sync] command = php /sobey/www/channel-pub-api/yii qq-transaction-video/sync autorestart = true startsecs = 0 stopwaitsecs = 10 stderr_logfile = /data/logs/yii-qq-transaction-video-sync-stderr.log stdout_logfile = /data/logs/yii-qq-transaction-video-sync-stdout.log |
2、在控制台命令脚本,运行 1 次,写入 1 个文件,代码如下
1 | file_put_contents ( '/sobey/www/channel-pub-api/console/runtime/' . date ( 'Y-m-d-H-i-s' ) . '.txt' , time()); |
3、在开发环境升级后,查看目录 /sobey/www/channel-pub-api/console/runtime/ ,脚本执行完毕后,间隔 1 秒后,就立即执行下 1 次
1 2 3 4 5 6 7 | -rw-r--r-- 1 root root 10 Nov 15 10:28 2018-11-15-10-28-29.txt -rw-r--r-- 1 root root 10 Nov 15 10:28 2018-11-15-10-28-30.txt -rw-r--r-- 1 root root 10 Nov 15 10:28 2018-11-15-10-28-31.txt -rw-r--r-- 1 root root 10 Nov 15 10:28 2018-11-15-10-28-32.txt -rw-r--r-- 1 root root 10 Nov 15 10:28 2018-11-15-10-28-33.txt -rw-r--r-- 1 root root 10 Nov 15 10:28 2018-11-15-10-28-34.txt -rw-r--r-- 1 root root 10 Nov 15 10:28 2018-11-15-10-28-35.txt |
4、现在的需求是,运行完毕 1 次之后,间隔 60 秒后再次运行控制台命令脚本,最终决定在脚本内部基于 sleep 实现,脚本执行完毕后,间隔 61 秒后,就立即执行下 1 次
1 2 | // 延缓执行 60 秒 sleep(60); |
1 2 3 4 5 | -rw-r--r-- 1 root root 10 Nov 15 10:45 2018-11-15-10-45-35.txt -rw-r--r-- 1 root root 10 Nov 15 10:46 2018-11-15-10-46-36.txt -rw-r--r-- 1 root root 10 Nov 15 10:47 2018-11-15-10-47-37.txt -rw-r--r-- 1 root root 10 Nov 15 10:48 2018-11-15-10-48-38.txt -rw-r--r-- 1 root root 10 Nov 15 10:49 2018-11-15-10-49-39.txt |
近期评论