一个高级的PostgreSQL独立任务调度器,完全由数据库驱动,支持任务链、参数传递、YAML配置和OpenTelemetry。
- v7.1.0
- 发布于
- 2026年8月25日
- 1,401
- 星标
- 4,580
- 下载
- 同步于
- 15 天前
最新版本
v7.1.02026年8月25日 01:03下载慢?可在上方随时切换镜像源
项目说明
项目概述
pg_timetable 是一个高级的 PostgreSQL 独立任务调度器,相比 cron 等传统调度器提供许多优势。它完全由数据库驱动,允许调度 PostgreSQL 命令、系统程序和内置操作。
主要功能
- 任务可组织为链(chains),每个任务执行 SQL、内置命令或可执行程序
- 支持向任务传递参数
- 错过的链(因停机导致)可自动重试
- 支持可配置的重复执行
- 内置任务:发送邮件、下载、导入文件等
- 完全数据库驱动的配置和日志记录
- 增强的 cron 风格调度
- 可选并发保护
- YAML 格式链定义,便于配置
- OpenTelemetry 追踪和指标导出(可选)
- 官方 Docker 镜像,支持
linux/amd64和linux/arm64
适用人群
- PostgreSQL 数据库管理员
- 需要高级任务调度的开发者和运维工程师
快速上手
- 安装 pg_timetable
- 使用 SQL 添加任务:
SELECT timetable.add_job('execute-func', '5 0 * 8 *', 'SELECT public.my_func()') - 或使用 YAML 文件定义链:
pg_timetable --file chains.yaml postgresql://user:pass@host/db - 查看文档
核心优势
- 完全数据库驱动,配置和日志都在数据库中
- 支持任务链和参数传递
- YAML 配置,可读性强
- OpenTelemetry 可观测性
系统要求
- 操作系统:跨平台(通过 Docker)
- 支持架构:linux/amd64、linux/arm64
历史版本
排序