The article describes how the streaming service Veeps used Elixir to scale its performance, handling hundreds of thousands of concurrent viewers. The transition from Ruby on Rails to Elixir greatly improved system efficiency and concurrency handling. Elixir’s ecosystem provided robust solutions for technical challenges, with LiveView simplifying front-end and back-end collaboration. The case illustrates the benefits of using Elixir for high-scale challenges, achieving significant operational simplicity and increased developer productivity.
Main Points
Successful adoption of Elixir at Veeps
Veeps successfully utilized Elixir to enhance its streaming service’s scalability and performance, handling hundreds of thousands of concurrent viewers.
Efficiency improvement with Elixir
The transition from Ruby on Rails to Elixir marked a significant improvement in system efficiency and capacity for concurrent user handling.
Elixir's ecosystem benefits
Elixir’s ecosystem provided Veeps with essential tools for architectural simplification and operational efficiency, minimizing the need for external dependencies.
Collaboration enhancement with LiveView
The use of LiveView significantly simplified front-end and back-end developer collaboration, leading to enhanced productivity.
Insights
Elixir played a critical role in Veeps' backend performance, supporting high-scale demands.
Veeps have been named one of the ten most innovative companies in music and hold the Guinness World Record for the world’s largest ticketed livestream.
The transition from Ruby on Rails to Elixir significantly enhanced concurrency handling and system efficiency.
Before the Elixir rewrite, 20 Rails nodes were required for big events, reduced to only 2 Elixir nodes afterwards, handling 83x more concurrent users.
Architectural adjustments and the use of Elixir allowed Veeps to manage highly demanding services effectively.
Different parts of the Veeps system, like the Beaconing service, have unique scalability requirements, met through a distributed system approach.
Elixir's ecosystem provides built-in solutions for technical challenges, emphasizing operational simplicity and productivity.
Vincent Franco, CTO of Veeps, highlights the minimal reliance on external tools due to the comprehensive capabilities of Elixir and its ecosystem.
LiveView facilitated a smoother collaboration between front-end and back-end developers.
After adopting LiveView for the front-end, the need for API negotiation between developers was reduced, simplifying the development process.
Links
- Veeps
- one of the ten most innovative companies in music
- Guinness World Record
- Ruby on Rails
- Vincent Franco
- DockYard
- Elixir release
- distributed process group
- Umbrella Project feature
- GenServer
- ETS (Erlang Term Storage)
- Phoenix PubSub
- Phoenix
- Broadway
- Oban
- LiveView