Skip to content
Menu
All companies

Mux: documented Elixir use

Phoenix powers its public video API and real-time dashboard, alongside Go video-processing services.

How Mux uses Elixir

Mux engineer Dylan Jhaveri describes a Phoenix public API and a real-time dashboard powered by WebSockets and Channels. Elixir handles API work, asynchronous jobs and rate limiting, while Go services do CPU-intensive video processing.

The team used the exq library for background jobs within the application supervision tree. This is a useful division of responsibilities: Elixir coordinates requests and application behavior, while the video infrastructure does the encoding.

Source

Read the engineering story. This profile describes the implementation discussed in that source.