cronicle

多服务器任务调度与实时监控系统

⭐ 5.8k JavaScript MIT

解决什么问题

它解决了传统 cron 缺乏易用的 Web 界面、跨服务器协调能力、实时监控和日志查看的问题,同时提供了任务依赖、插件扩展、多时区支持、自动故障转移等高级特性,让定时任务管理更直观、可靠且可扩展。

最适合

适合需要跨多台服务器管理定时任务的团队,尤其是运维、DevOps 和开发人员,以及希望用 Web UI 取代 crontab 来调度复杂工作流(可配合任何语言插件)的场景。

不适合

不适合简单的单机任务调度(可用 cron 代替)、需要高并发实时流处理或需要集成容器编排(如 Kubernetes)的复杂微服务场景(此时应考虑专用调度系统如 Nomad 或 AWS Step Functions)。

快速上手

bash
1. 克隆仓库并安装依赖
git clone https://github.com/jhuckaby/Cronicle.git && cd Cronicle && npm install
2. 启动服务(默认端口 3012)
node bin/server.js
3. 打开浏览器访问 http://localhost:3012 使用默认管理员(admin/admin)登录

项目详情

Cronicle 是一个用 Node.js 编写的现代化 Cron 替代品,提供集中式的 Web UI 来管理跨多台服务器的任务调度。它支持单机或集群部署,具备自动故障转移和服务发现能力。你可以为每个任务定义 shell 命令,或用任何语言编写插件(通过 JSON 消息协议交互)。系统提供实时任务状态视图、CPU/内存使用跟踪、历史统计与性能图表,以及多时区调度、任务排队、Webhook 通知等功能。它内置 REST API 和 API 密钥认证,方便外部应用触发任务。Cronicle 在 GitHub 上拥有 5,770+ 星标(数据截至 2025 年),其精神续作 xyOps 已发布 v1.0,但 Cronicle 仍会获得安全与关键修复支持。