如何在Linux上做一个定时任务管理系统

茫茫github中找到一个合适的cron定时任务管理系统

https://github.com/ouqiang/gocron

安装步骤:

找到 releases 版本 (根据自己的系统找到相对应的版本)

本示例采用

gocron-node-v1.5.3-linux-amd64.tar.gz

gocron-v1.5.3-linux-amd64.tar.gz

这两个压缩文件作为demo

  1. 解压压缩包  

  2. cd 解压目录

  3. 启动

  • 调度器启动, 默认监听0.0.0.0:5920

    • Windows: gocron.exe web

    • Linux、Mac OS: ./gocron web

  • 任务节点启动, 默认监听0.0.0.0:5921

    • Windows: gocron-node.exe

    • Linux、Mac OS: ./gocron-node (这里记得不要用root权限去执行,如果当前已经是root用户,可以用指定比如www用户执行 sudo -u www ./gocron-node )

启动上面两个端口后(分别是5920和5921),浏览器访问 http://127.0.0.1:5920 就可以看到界面了

微信图片_20210602094817.png

操作步骤:

首先我们添加一个任务节点

QQ截图20210602095008.jpg

然后添加一个任务(测试定时curl百度首页)

QQ截图20210602101846.jpg

这里我们将测试curl百度的首页结果保存到/data/wwwlogs/curl-baidu.log文件中,保存任务后可以查看任务日志,在每条任务中都会有对应的结果,成功或者错误,错误的话需要小伙伴自己去找原因,是否命令写错或者权限不足等问题自己去处理~~~

QQ截图20210602102133.jpg

使用ThinkPHP的小伙伴可以结合博主之前的文章做一个优化:https://www.wolfcode.net/info/187/

将命令台的任务搬到gocron定时任务系统中,任务配置如下:

QQ截图20210602102207.jpg

综上,整个操作很简单。正式环境可以把5921和5921这两个进程用nohup或者supervisor守护!整个配置很简单,如有问题可以留言反馈讨论!


打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开微信扫一扫,即可进行扫码打赏哦

分享到
  • QQ好友
  • 微信好友
  • 新浪微博