Stack53

Background work, on schedule.

Jobs & Cron runs scheduled jobs, background workers and queues — with retries, execution history and logs for every run.

Pricing starts at [price] per [usage unit] · See pricing
app.stack53.com / acme / storefront / jobs
storefront OverviewJobsQueuesWorkersHistoryLogs
production New job
JOBSCHEDULELAST RUNNEXT
nightly-report0 2 * * *Succeeded[Time]
sync-inventory*/15 * * * *Running[Time]
send-digest0 8 * * 1Retrying[Time]
email-workerQueue: emailsProcessing—
ACTIVITY nightly-report finished successfully send-digest failed · retry scheduled Running sync-inventory on schedule
Cron schedules Recurring jobs, on time
Queues and workers Work off the request path
Retries Failed runs tried again
History and logs Every run recorded
SCHEDULES

Write a cron. See the next runs.

Set a schedule with a cron expression and check it before you save — the editor spells it out and lists the upcoming runs.

Cron expressions for recurring jobsRun any job on demandRuntimes: [Supported runtimes]
Schedules in the docs →
Edit schedule · nightly-reportproduction
Cron expression
0minute2hour*day*month*weekday
At 02:00, every day
NEXT RUNS · [TIME ZONE]
[Time]Next [Time] [Time]
Cancel Save schedule
QUEUES AND WORKERS

Queue the work. Workers handle it.

Push tasks onto a queue from your app and return right away. Background workers pick them up and process them outside the request path.

How queues work →
Queue · emailsproduction
Queued
send-receiptorder 1045
send-receiptorder 1044
Waiting for a worker
Running
send-receiptorder 1043on worker-1
welcome-emailuser u_82f1on worker-2
Done
send-receiptorder 1042
password-resetuser u_77c0
WORKERS worker-1 Busyworker-2 Busyworker-3 Idle
RETRIES

Failures retried, never hidden.

When a run fails, it is retried according to the job's retry settings. Every attempt keeps its own status and logs, so you can see what went wrong.

Retries and failures →
Run · send-digestSucceeded after retry
Attempt 1 · Failed[Time]
[info] building weekly digest [error] mail provider timed out
Attempt 2 · Failed[Time] Retried automatically · same error
Attempt 3 · Succeeded[Time] Digest sent · run complete
Retry settings: up to 3 attemptsRe-run
ALSO INCLUDED

Everything recurring work needs.

Full feature list in the docs →
Scheduled jobs Recurring work on a cron expression, per environment.
Background workers Long-running processes that pick up work as it arrives.
Queues Hand tasks from your app to workers without blocking requests.
Retries and failures Failed runs retried by your settings, with failures kept visible.
Execution history Every run and attempt recorded with its status.
Logs Output from every run, in the app or from the CLI.
HOW IT WORKS

Running in four steps.

  1. 01 Create a job In a project, in the environment you choose.
  2. 02 Point it at your code The command or handler each run should execute.
  3. 03 Set a schedule or queue A cron expression, or work pushed onto a queue.
  4. 04 Watch every run History, logs and retries in one view.
AUTOMATE

Schedule and run jobs from code.

Anything you can do in the dashboard — create a job, run it, push to a queue — you can do from the CLI, the SDKs or the REST API.

$ stack53 jobs create nightly-report --schedule "0 2 * * *" # ✓ nightly-report scheduled on production $ stack53 jobs run nightly-report # ✓ run started $ stack53 jobs history nightly-report
Illustrative — see the API reference for exact commands and fields.
USE CASES

What teams run as jobs.

Reports and exports Build reports and exports overnight, then store the results. DatabasesStorageBackups
Email and notifications Send receipts and digests from a queue, outside the request path. FunctionsApp PlatformAuth
Data sync and cleanup Keep records in step and clear stale data on a schedule. DatabasesCacheEnvironments
SECURITY Isolated by environment Jobs use their environment's variables and secretsEvery run and retry recorded in historyWorkspace roles decide who can deploy Security at Stack53 →
AVAILABILITY Canadian regions
Canada Central[Status]
Canada East[Status]
Operated by [Partner / Stack53] All regions →
PRICING From[price]/ [usage unit] Billed by usage. See pricing for units and any included allowance. See full pricing →
FAQ

Common questions.

A job runs on a schedule or on demand, then finishes. A worker is a long-running process that takes tasks from a queue as they arrive.

Schedule your first job.

Set a schedule, start a worker and go live on Stack53 — or talk to us about larger workloads.