“Yes! Convex has built-in support for both scheduled jobs and background jobs.”
“Scheduled jobs: Run a function at a specific time or after a delay.”
“Recurring jobs (cron): Run functions periodically, e.g. every minute, hourly, daily, or weekly.”
“Background jobs: Execute work asynchronously without blocking the request that triggered it.”
“Retries: Handle failures and retry scheduled work.”
“Long-running tasks: Use Convex Actions for work that needs external APIs, network access, or Node.js libraries.”
“These jobs are durable: they're stored in Convex's database and survive restarts.”
“Convex automatically registers and manages these when you deploy.”
“No external cron infrastructure needed.”
“It's one of the nice things about Convex: you can avoid introducing Redis, BullMQ, a separate worker service, and external cron infrastructure until you actually need them.”
“One important distinction: scheduled mutations have automatic retry guarantees, whereas Actions are not automatically retried.”
“Very long-running compute-intensive workloads.”
“GPU workloads.”
“Large-scale data processing.”
“Tasks requiring infrastructure or runtime environments Convex doesn't provide.”
