Powered by AppSignal & Oban Pro
Would you like to see your link here? Contact us

Oban Training—Outline

learn/oban_training/start.livemd

Oban Training—Outline

Overview

👋 Welcome to Oban Training!

Sections

📓 Why Oban?

  • Where we convince you that using Oban is a good idea
  • Not really. It’s where we’ll give a high level overview of the architecture
  • Terminology, how things work

📓 Up and Running

  • Installing Oban into an application
  • Running migrations
  • Configuring for tests
  • Verifying Oban is running and configured properly

📓 Signing Up

  • Creating worker modules
  • Enqueueing jobs
  • Scheduling jobs to run in the future
  • Asserting jobs are enqueued in tests

📓 Placing an Order

  • Controlling worker behaviour with return values
  • Testing worker functionality
  • Managing retry backoff
  • Providing execution timeouts

📓 Refunding an Order

  • Ensuring uniqueness
  • Cancelling and retrying jobs
  • Replacing fields on unique conflicts
  • Draining queues for integration testing

📓 Delivering a Daily Digest

  • Running jobs on a schedule
  • Managing multiple queues and concurrency
  • Pausing and resuming queues
  • Validating configuration changes

📓 Backfilling Reviews

  • Deprioritizing jobs
  • Inserting multiple jobs at once
  • Recursively enqueuing jobs
  • Asserting the content of all enqueued jobs

📓 Ready for Production

  • Pruning older jobs
  • Rescuing unexpectedly stopped jobs
  • Logging and instrumenting with Telemetry
  • Reporting errors