背景
最近在开发过程中,感觉到管理在不同机器上的管理不同定时任务有点麻烦,于是想集中化管理定时任务。经过一番调研,选择了 gocron - 定时任务管理系统。
介绍
优势:基于 go 语言开发的一款轻量级定时任务集中调度和管理系统,性能高,页面操作也很简单。
安装
安装过程比较简单,github 项目里有介绍,一步步来基本不会有问题。这里概括下几个点:
需要下载 gocron 和 gocron-node 两个包
gocron 是 web 配置平台 ,监听 5920 端口;gocron-node 是想要执行的任务节点服务器部署的程序,监听 5921 端口
Supervisor 管理
使用 supervisor 管理,保证进程的稳定运行。supervisor 的使用本文不做介绍了,主要是说明下 supervisor 的配置,如下:
go-cron-node
[program:go-cron-node]
process_name=%(program_name)s_%(process_num)02d
command=/usr/local/server/gocron-node/gocron-node
autostart=true
autorestart=true
user=release
numprocs=1
startsecs=3
startretries=5
redirect_stderr=true
stdout_logfile_maxbytes=20MB
stdout_logfile_backups=20
stdout_logfile=/data/log/supervisor/go_cron_node.log
go-cron
process_name=%(program_name)s_%(process_num)02d
command=/usr/local/server/gocron/gocron web
autostart=true
autorestart=true
user=release
numprocs=1
startsecs=3
startretries=5
redirect_stderr=true
stdout_logfile_maxbytes=20MB
stdout_logfile_backups=20
stdout_logfile=/data/log/supervisor/go_cron.log
=