Skip to main content

The admission gate for background work

Most job queues ask the store for the next jobs. Headgate asks a different question: given fleet policy and available capacity, what may this worker run? The store answers atomically while it claims and leases the work.

Start in five minutes

Define a typed task, enqueue it, and drain a worker using the in-memory store.

Understand the gate

See how rate limits, fairness, concurrency, and quarantine become one admission decision.

Build a workflow

Compose durable fan-out and fan-in dependencies in Rust or Go.

Explore the API

Understand the control API, then use the interactive endpoint reference.

Why headgate

Fleet-wide policy

Rate limits and concurrency ceilings are shared across every worker process.

Two languages

Rust and Go implement the same contracts from shared specifications and conformance tests.

Three stores

PostgreSQL, MySQL, and Redis expose matching core behavior and honest optional capabilities.

The execution path

The worker never reimplements fleet policy. Moving policy evaluation out of the store would make the result dependent on which worker happened to poll.

Pick your path

Continue to the quickstart

Build and verify your first job without installing a database.