Skip to content

A Golang scheduled task framework featuring chainable API design, lightweight runtime, and flexible task management. Ideal for building clean and efficient scheduled systems.

Notifications You must be signed in to change notification settings

Piwriw/go-chrono

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go-chrono

支持功能

支持的任务类型

  • Cron表达式(Cron Job):任务可以使用 crontab 格式的时间表达式运行
  • IntervalJob:任务可以每隔 X 秒、分钟、小时、天、周、月运行
  • 每日(DailyJob):任务可以每隔 X 天在特定的时间运行
  • 每周(WeeklyJob):任务可以每隔 X 周在特定的星期几和时间运行
  • 每月(MonthlyJob):任务可以每隔 X 月在特定的日期和时间运行
  • 一次性(OnceJob):任务可以在特定的时间运行(可以是一次或多次)

支持功能

  • 允许设置调度器全局配置,优先使用Job自身配置
    • 超时时间
    • Watch监听模式
    • 钩子函数
    • 重试策略(是否至少间隔多大?,防止溢出风险)
  • 允许自定义实现JobClient
    • Example
  • 统一Time.Format格式
  • 设置Schedule最大管控调用任务数量
  • 自定义Logger
  • Job标签级别管控
    • 缺少移除func
  • 优雅终止关闭
  • 监控模式
    • Prometheus端点监控
    • Listen Web监控
    • 可以查询最近X次的执行结果
      • 支持查询指定时间范围的执行结果
      • 支持查询指定标签的执行结果
      • 支持查询指定任务的执行结果
      • 支持查询指定任务的执行结果
      • 新增EventID支持
        • 允许自定义实现Event ID生成器
        • 默认使用JobID+JobName+时间戳
        • 内置支持生成器:
          1. UUID
          2. JobID+JobName+时间戳

Example

About

A Golang scheduled task framework featuring chainable API design, lightweight runtime, and flexible task management. Ideal for building clean and efficient scheduled systems.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •