定时任务
使用Postgres中的Cron语法调度周期性任务
Supabase Cron 是一个 Postgres 模块,它简化了使用 cron 语法调度周期性作业以及在 Postgres 内部监控作业运行的过程。
您可以通过 SQL 或仪表板中的集成 -> Cron界面创建 Cron 作业,根据使用场景,这些作业可以设置为每秒运行一次到每年运行一次不等。
每个作业都可以零网络延迟地运行 SQL 片段或数据库函数,也可以轻松发起 HTTP 请求,例如调用 Supabase 边缘函数。
为了获得最佳性能,我们建议并发运行的作业不超过 8 个。每个作业的运行时间不应超过 10 分钟。
Cron 工作原理
底层实现上,Supabase Cron 使用了 pg_cron
Postgres 数据库扩展作为作业的调度和执行引擎。
该扩展会在您的数据库中创建一个 cron
模式,所有作业都存储在 cron.job
表中。每个作业的运行状态会被记录在 cron.job_run_details
表中。
Supabase 仪表板提供了调度作业和监控作业运行的界面。您也可以通过 SQL 实现相同的功能。