网站首页 > 开源技术 正文
gocron是一个用go写的轻量级的定时任务集中管理和调度的系统,主要用于替代liunx的crontab,我们为什么会用这个系统呢,最主要可视化,方便管理,看日志和执行时间方便。
官网开源地址:https://gitee.com/mirrors/gocron
其实官网的安装说明已经很详细了,我这里在大概的说一下。
1、必须安装go的运行环境(go语言写的嘛)
2、主要gocron是web可视界面,gocron-node是服务器端需要安装的。
3、gocron的默认监听端口5920,gocron-node的默认监听端口 5921。
我们以二进制的方式安装,下载下面的两个包
https://github.com/ouqiang/gocron/releases/download/v1.5.3/gocron-node-v1.5.3-linux-amd64.tar.gz
https://github.com/ouqiang/gocron/releases/download/v1.5.3/gocron-v1.5.3-linux-amd64.tar.gz
解压
选择合适的目录,执行解压命令
tar -zxvf gocron-node-v1.5.3-linux-amd64.tar.gz
tar -zxvf gocron-v1.5.3-linux-amd64.tar.gz
运行
进入到解压目录我们来启动程序,安全期间不要使用root用户运行,我们先创建个www用户
useradd www
sudo -u www ./gocron-v1.5.3-linux-amd64/gocron web
启动gocron-node (不能使用root用户,使用后会失败)
sudo -u www ./gocron-node-v1.5.3-linux-amd64/gocron-node
启动程序后需要一直开着运行窗口,不能关掉,一会我们在说解决办法。
此刻你可以直接在浏览器里面访问,http://ip:5920,没有问题的话会打卡运行界面,需要我们输入链接数据库的配置。
完成后会跳到登陆页面,输入管理员账号和密码登陆。
任务节点
登陆后最先做的是设置任务节点,任务节点指的就是服务器,若是在哪台服务器跑脚本,就设置好哪一台,需要提前在此服务器安装gocron-node。
任务节点完成后,任务管理里面添加定时任务即可,这里的定时任务是精确到秒的,切记,切记!
添加完运行的时候,就可以看到日志了,这里不在多介绍,相信你肯定会。
后台运行脚本
创建gocron 和 gocron-node 的shell脚本run.sh,放到你想放的目录,我这里放在 /home/shell 中,注意下面脚本的名字变化。
#!/bin/bash
#启动gocron-node
cd /home/gocron-node-linux-amd64
sudo -u www bash -c ‘nohup ./gocron-node > /dev/null 2&1 &’
#启动gocron
cd /home/gocron-linux-amd64
sudo -u www bash -c ‘nohup ./gocron > /dev/null 2&1 &’
修改文件权限,run.sh需要可执行权限。
chmod -R 777 run.sh
指定文件所在的组
chown -R www:www run.sh
启动脚本文件
source /home/shell/run.sh
至此gocron安装完成。
说明使用source执行的原因:当shell执行脚本的时候,它会开启一个子shell,目录跳转命令只会在这个子shell中执行,并不会影响到父shell。要想在父shell中实现目录的跳转,需要用source来执行脚本。
猜你喜欢
- 2024-10-26 浅谈Kubernetes CRD和Operator的原理和使用方法
- 2024-10-26 笨办法学物联网之四:99个物联网动手实践项目
- 2024-10-26 Linux入门常用必会60个命令实例详解(一)
- 2024-10-26 Kubernetes任务调用Job与CronJob及源码分析
- 2024-10-26 linux 常用cron检测脚本(linux查询crontab)
- 2024-10-26 作业帮 K8s Serverless 虚拟节点大规模应用实践
- 2024-10-26 火山引擎 Redis 云原生实践(火山引擎app)
- 2024-10-26 当 GoLand 遇到 Kubernetes:如何调试和运行 Go 程序
- 2024-10-26 Go 每日一库之 jobrunner(github每日一题)
- 2024-10-26 golang cron 定时任务(go语言定时任务)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)