Graphile Worker
A high performance job queue for PostgreSQL, written in Node.js with automatic retries, low latency, and cron job support.
At a Glance
Pricing
MIT licensed open source version suitable for OSS projects, not-for-profits, hobbyists, and pre-revenue start-ups
Engagement
Available On
About Graphile Worker
Graphile Worker is a high-performance job queue built specifically for PostgreSQL and Node.js applications. It enables developers to process background jobs with exceptional speed—up to 10,000 jobs per second—while maintaining low latency through PostgreSQL's LISTEN/NOTIFY mechanism, typically starting jobs within milliseconds. The tool leverages PostgreSQL's reliable transactions to ensure jobs are never lost, making it ideal for production workloads that require dependable background processing.
Key Features:
-
Automatic Retries with Exponential Backoff - Jobs that fail are automatically retried with intelligent backoff timing, built on PostgreSQL's reliable transaction system to ensure no job is ever lost.
-
High Performance Processing - Capable of handling up to 10,000 jobs per second, allowing teams to keep infrastructure simple with just PostgreSQL and Node.js.
-
Low Latency Execution - Jobs start in milliseconds thanks to PostgreSQL's LISTEN/NOTIFY feature, enabling near real-time background processing for customer-facing applications.
-
Cron Job Scheduling - Set up repeating tasks with minute-by-minute granularity, with optional backfill capability to cover times when servers weren't running.
-
Job Control Features - Schedule jobs to run in the future, debounce jobs to avoid redundant work, and cancel or update scheduled jobs as needed.
-
Task De-duplication - Prevent duplicate job execution with built-in de-duplication mechanisms.
-
Standalone and Embedded Modes - Run Worker as a standalone process or embed it directly within your Node.js application.
-
Easy Migration Path - Examples included for exporting jobs to other queues if you decide to migrate to a dedicated job queue solution later.
To get started, install Graphile Worker via npm and configure it to connect to your PostgreSQL database. Define task handlers as JavaScript functions, then schedule jobs using the provided API. The CLI quickstart guide provides step-by-step instructions for setting up your first job queue. Worker Pro, available to sponsors, adds advanced features like crashed worker recovery and live migration to new Worker versions.

Community Discussions
Be the first to start a conversation about Graphile Worker
Share your experience with Graphile Worker, ask questions, or help others learn from your insights.
Pricing
Free Plan Available
MIT licensed open source version suitable for OSS projects, not-for-profits, hobbyists, and pre-revenue start-ups
- Job queue for PostgreSQL
- High performance with SKIP LOCKED
- Low latency via LISTEN/NOTIFY
- Parallel by default
- Standalone and embedded modes
Launch Offer (Sponsor+)
Early access pricing - keep preferential rate for at least 18 months after launch offer ends
- All Graphile Worker features
- Crashed worker recovery
- Live migration to new Worker versions
- Future quality of life improvements
- Priority support via community Discord
Production Sponsor
Suitable for small and medium businesses
- All Graphile Worker features
- Crashed worker recovery
- Live migration to new Worker versions
- Future quality of life improvements
- Free access to pgRITA
- Access to PostGraphile Pro
- Name featured on graphile.org
- Logo featured in project
- Discounted video calls
- Priority support via community Discord
Private Advisor Tier
Perfect for enterprises needing bespoke advice and support
- All Graphile Worker features
- Crashed worker recovery
- Live migration to new Worker versions
- Future quality of life improvements
- Free access to pgRITA
- Access to PostGraphile Pro
- Logo featured on graphile.org
- Logo featured in project
- Discounted consultancy packages
- Complimentary Development Support contract
- Support within your own company
Capabilities
Key Features
- Automatic retries with exponential backoff
- High performance up to 10,000 jobs per second
- Low latency job execution via LISTEN/NOTIFY
- Cron job scheduling with minute granularity
- Job scheduling for future execution
- Job debouncing
- Task de-duplication
- Standalone and embedded modes
- Parallel processing by default
- Easy migration to other job queues
- Optional backfill for cron jobs
- Cancel or update scheduled jobs