Developers
1. Install
terminal
npm i @gantry/node
npx gantry dev
2. Enqueue
app/signup.ts
import { gantry } from “@gantry/node”
await gantry.enqueue(“emails”, {
to: user.email,
template: “welcome”
}, { key: user.id })
3. Handle
workers/emails.ts
gantry.handle(“emails”, async (job) => {
await sendEmail(job.data)
})
// gantry worker emails --concurrency 32
Node
@gantry/node
18+ and up
Python
gantry-sdk
3.10+ and up
Go
go.gantry.dev/sdk
1.21+ and up
Ruby
gantry
3.2+ and up
REST over HTTPS, bearer token, JSON in and out. Rate limited at 1,000 requests a second per project, which nobody has reached with the batch endpoint.
gantry dev
Local cluster on your machine, no account
gantry worker <queue>
Run a worker with --concurrency and --lease
gantry enqueue <queue> <json>
One job from the shell, for testing
gantry queues
Depth, oldest and rate, refreshed every second
gantry dlq list --queue billing
What is parked and why
gantry dlq replay --queue billing
Put it back, one or all
gantry export --since 30d
Everything as JSON lines