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