~/talk

Background Jobs with Elixir: Oban in the Real World

Talkat ElixirConf EU 2026 · 2026-04-23..04-24· [elixir-and-erlang]
slides:none on file

Company runs Oban on four Fly nodes against a managed Postgres and faces ten million jobs a day workloads; queues are paused to stop churn, then auto_vacuum settings are tuned and an immediate reindex concurrently (≈20 minutes) clears heavy index bloat caused by MVCC churn from multiple updates per job. Patterns include many granular queues, self‑enqueuing workers and uniqueness constraints, and the hard lesson is monitoring PG stats and vacuum health, not just job telemetry.

AI-written summary · about

  1. 0:00Introduction
  2. 2:52Motivation for Oban at Fairing
  3. 5:00Monday production incident
  4. 10:47Postgres MVCC and vacuuming
  5. 13:55Root cause: bloated jobs table
  6. 15:23Solving incident and preventing recurrence
  7. 17:30Tuning auto vacuum and pruner
  8. 19:36Separating connections and queue granularity
  9. 22:29Self-enqueuing workers and cron alternatives
  10. 26:01Batching jobs and Oban Pro
  11. 27:47Observability gap in monitoring
  12. 30:37Four dimensions of Oban monitoring
  13. 34:30Key takeaways
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.