Nothing Special   »   [go: up one dir, main page]

All Projects → iwannay → Jiacrontab

iwannay / Jiacrontab

Licence: apache-2.0
简单可信赖的任务管理工具

Programming Languages

go
31211 projects - #10 most used programming language
golang
3204 projects

Projects that are alternatives of or similar to Jiacrontab

gronx
Lightweight, fast and dependency-free Cron expression parser (due checker), task scheduler and/or daemon for Golang (tested on v1.13 and above) and standalone usage
Stars: ✭ 206 (-80.42%)
Mutual labels:  crontab, daemon, scheduler, job-scheduler
Go Quartz
Simple, zero-dependency scheduling library for Go
Stars: ✭ 118 (-88.78%)
Mutual labels:  scheduler, crontab, job-scheduler, job
Swiftqueue
Job Scheduler for IOS with Concurrent run, failure/retry, persistence, repeat, delay and more
Stars: ✭ 276 (-73.76%)
Mutual labels:  scheduler, job-scheduler, job
croner
Trigger functions and/or evaluate cron expressions in JavaScript. No dependencies. Most features. All environments.
Stars: ✭ 169 (-83.94%)
Mutual labels:  job, crontab, scheduler
Workq
Job server in Go
Stars: ✭ 1,546 (+46.96%)
Mutual labels:  scheduler, job-scheduler, job
Bree
🚥 The best job scheduler for Node.js and JavaScript with cron, dates, ms, later, and human-friendly support. Works in Node v10+ and browsers, uses workers to spawn sandboxed processes, and supports async/await, retries, throttling, concurrency, and graceful shutdown. Simple, fast, and lightweight. Made for @ForwardEmail and @ladjs.
Stars: ✭ 933 (-11.31%)
Mutual labels:  scheduler, crontab, job
Xxl Job
A distributed task scheduling framework.(分布式任务调度平台XXL-JOB)
Stars: ✭ 20,197 (+1819.87%)
Mutual labels:  scheduler, job
Gocron
定时任务管理系统
Stars: ✭ 4,198 (+299.05%)
Mutual labels:  scheduler, crontab
Hangfire.httpjob
httpjob for Hangfire,restful api for Hangfire,job调度与业务分离
Stars: ✭ 366 (-65.21%)
Mutual labels:  job-scheduler, job
Quartznet
Quartz Enterprise Scheduler .NET
Stars: ✭ 4,825 (+358.65%)
Mutual labels:  scheduler, job-scheduler
linda
Linda is a simple dispatcher library.
Stars: ✭ 12 (-98.86%)
Mutual labels:  job, scheduler
Taskscheduler
Cross-platform, fiber-based, multi-threaded task scheduler designed for video games.
Stars: ✭ 402 (-61.79%)
Mutual labels:  scheduler, job-scheduler
Antares
分布式任务调度平台(Distributed Job Schedule Platform)
Stars: ✭ 558 (-46.96%)
Mutual labels:  job-scheduler, job
yerbie
A blazing fast job queue built for ease of use and scalability
Stars: ✭ 16 (-98.48%)
Mutual labels:  scheduler, job-scheduler
Db Scheduler
Persistent cluster-friendly scheduler for Java
Stars: ✭ 352 (-66.54%)
Mutual labels:  scheduler, job-scheduler
php-cron-expr
Ultra lightweight, Dependency free and Super Fast Cron Expression parser for PHP
Stars: ✭ 42 (-96.01%)
Mutual labels:  crontab, scheduler
Chronos
Fault tolerant job scheduler for Mesos which handles dependencies and ISO8601 based schedules
Stars: ✭ 4,303 (+309.03%)
Mutual labels:  crontab, job-scheduler
Routine
go routine control, abstraction of the Main and some useful Executors.如果你不会管理Goroutine的话,用它
Stars: ✭ 40 (-96.2%)
Mutual labels:  crontab, job-scheduler
Crono
A time-based background job scheduler daemon (just like Cron) for Rails
Stars: ✭ 637 (-39.45%)
Mutual labels:  scheduler, daemon
Smart Scheduler Android
A utility library for scheduling periodic and non-periodic jobs efficiently.
Stars: ✭ 930 (-11.6%)
Mutual labels:  scheduler, job-scheduler

jiacrontab

Build Status

简单可信赖的任务管理工具

v2.0.0版发布

❤jiacrontab 最新版下载点这里❤

1.自定义job执行  
2.允许设置job的最大并发数  
3.每个脚本都可在web界面下灵活配置,如测试脚本运行,查看日志,强杀进程,停止定时...  
4.允许添加脚本依赖(支持跨服务器),依赖脚本提供同步和异步的执行模式  
5.支持异常通知  
6.支持守护脚本进程  
7.支持节点分组

架构

alt 架构

说明

jiacrontab 由 jiacrontab_admin,jiacrontabd 两部分构成,两者完全独立通过 rpc 通信
jiacrontab_admin:管理后台向用户提供web操作界面
jiacrontabd:负责job数据存储,任务调度

安装

二进制安装

1.下载 二进制文件。

2.解压缩进入目录(jiarontab_admin,jiacrontabd)。

3.运行

$ nohup ./jiacrontab_admin &> jiacrontab_admin.log &
$ nohup ./jiacrontabd &> jiacrontabd.log &

## 建议使用systemd守护

v2.0.x源码安装

1.安装 git,golang(version 1.12.x);可参考官网。 2.安装运行

$ git clone [email protected]:iwannay/jiacrontab.git
$ cd jiacrontab
# 配置代理
$ go env -w GONOPROXY=\*\*.baidu.com\*\*              ## 配置GONOPROXY环境变量,所有百度内代码,不走代理
$ go env -w GONOSUMDB=\*                              ## 配置GONOSUMDB,暂不支持sumdb索引
$ go env -w GOPROXY=https://goproxy.baidu.com         ## 配置GOPROXY,可以下载墙外代码

# 编译
# 注意需要先编译前端(https://github.com/jiacrontab/jiacrontab-frontend)
# 再安装go-bindata
# 然后assets指定前端资源编译后的位置
$ GO111MODULE=on go get -u github.com/go-bindata/go-bindata/v3/go-bindata
$ make build assets=$HOME/project/jiacrontab-frontend/build

$ cd build/jiacrontab/jiacrontab_admin/
$ nohup ./jiacrontab_admin &> jiacrontab_admin.log &

$ cd build/jiacrontab/jiacrontabd/
$ nohup ./jiacrontabd &> jiacrontabd.log &

浏览器访问 host:port (eg: localhost:20000) 即可访问管理后台

升级版本

1、下载新版本压缩包,并解压。

2、替换旧版jiacrontab_admin,jiacrontabd为新版执行文件

3、运行

基本使用

定时任务

  1. 超时设置和超时操作
    超时后会进行设置的超时操作 默认值为 0 不判断超时

  2. 最大并发数
    最大并发数控制同一job同一个时刻最多允许存在的进程数,默认最大并发数为1,当前一次未执行结束时则放弃后续执行。
    防止脚本无法正常退出而导致系统资源耗尽

  3. 添加依赖
    依赖就是用户脚本执行前,需要先执行依赖脚本,只有依赖脚本执行完毕才会执行当前脚本。
    3.1 并发执行
          并发执行依赖脚本,任意一个脚本出错或超时不会影响其他依赖脚本,但是会中断用户job

    3.2 同步执行
          同步执行依赖脚本,执行顺序为添加顺序,如果有一个依赖脚本出错或超时,则会中断后继依赖,以及用户job

  4. 脚本异常退出通知 如果脚本退出码不为0,则认为是异常退出

常驻任务

常驻任务检查脚本进程是否退出,如果退出再次重启,保证脚本不停运行。
注意:不支持后台进程。

附录

错误日志

错误日志存放在配置文件设置的目录下
定时任务为 logs/crontab_task
定时任务为 daemon_task 日志文件准确为日期目录下的 ID.log (eg: logs/crontab_task/2018/01/01/1.log)

错误日志信息

  1. 正常错误日志
    程序原因产生的错误日志
  2. 自定义错误日志
    程序中自定义输出的信息,需要在输出信息后面加入换行

v2.0.0截图

alt 截图1

alt 截图2

演示地址

2.0.0版本演示地址 账号:test 密码:123456

QQ群号:813377930

qq群

赞助

本项目花费了作者大量时间,如果你觉的该项目对你有用,或者你希望该项目有更好的发展,欢迎赞助。 赞助

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].