Cronova
轻量工作流调度器
Cronova 是一个面向开发者和运维的小型工作流调度器。它用 YAML 定义 DAG,以单个 Go binary 运行,内置 SQLite、Web Console、REST API 和实时日志,用来管理定时任务、依赖任务、重试、通知和运行状态。开源仓库: https://github.com/zoyluoblue/cronova。
从 cron 到可靠工作流
用版本化 YAML 定义 DAG,调度依赖任务,查看实时状态与日志,并恢复失败运行。
架构
Web UI、REST、MCP 与 JSON CLI 接入调度内核;调度器通过 gRPC 向 executor 下发任务;SQLite 保存元数据与状态,日志按任务实例落盘。
常见问题
Cronova 是 Apache Airflow 的替代品吗?
对于需要 DAG、依赖、重试、回填、资源池、Web UI 与 API,但不想运行 Python 调度栈、外部数据库和消息队列的团队,是。对于超大规模和强 Python 插件生态的数据平台,Airflow 仍更合适。
需要安装数据库、JVM 或 Python 吗?
Cronova 自身不需要。调度器是一个 Go 二进制并内置 SQLite;只有你的任务使用 Python、Java 或数据库客户端时,主机才需要对应运行时。
任务可以使用哪些语言?
支持 shell、Python、SQL、JAR 与 HTTP 任务。shell 任务还可调用主机上的 Node、Go、Rust 二进制或任何现有命令。
支持哪些平台?
支持 Linux 与 macOS,amd64 与 arm64。预编译版本通过 GitHub Releases 提供。
调度器重启时,正在运行的任务会怎样?
生产部署可使用独立 gRPC executor;调度器恢复后会探测并重新挂接在跑任务,避免重复执行。