Most applications have background jobs that require managing. While a basic queue implementation is simple to write, it could riddle your system with tight coupling, and straddle the developers with multiple nearly-duplicate implementations.
In this talk, I will explain our design constraints for such a task queue system, and present an implementation, taking into account Elixir’s strengths in concurrency, state management, and node clustering. I will also examine the performance characteristics of such an implementation.
Evadne is a software engineer with background in HCI. She works on applications and services that help educators reach their fullest potential, and contributes to open-source projects in her spare time.