Gary Rennie

Gary Rennie

Phoenix Core Team Member

The Road to 2 Million Websocket Connections in Phoenix

This talk will discuss how the Phoenix team was able to create a single chat room with 2 million users on a single machine. Benchmarking WebSockets is a little more in depth than benchmarking HTTP requests, this talk covers the Tsung tool which was used for the benchmarks and how it can be configured for different testing scenarios. I will cover how Tsung was used to find the concurrent connection limits that Phoenix could handle. I will then cover the techniques that were used to find the parts of the Phoenix codebase with the bottlenecks that caused these limits and how these limits were overcome.

Talk objectives

Learn how to benchmark WebSockets using Tsung Explore how to find and fix bottlenecks.

Target audience

Anyone interested in Phoenix Channel performance.



Gary is a member of the Phoenix core team, often found answering questions on Stack Overflow for the elixir and phoenix-framework tags. He is developer at VoiceLayer using Elixir and Phoenix full-time.

Github: Gazler

Twitter: @TheGazler