Episode 57
Scaling Live Chat with Cade Ward
July 27th, 2021
57 mins 19 secs
About this Episode
We sat down with co-host Cade Ward to hear how he and his team tackled a problem of hosting live web chats with crowds of 120K+ users coming together for live events. On the show, we have talked with a couple guests with similar bursting high-load situations. Cade had been through it too so it was time to dig in and cover how this situation can be solved. We cover the different attempts and temporary solutions used and the final solution that has been working really well. In fact it works so well, during a recent event, the auto-scaling didn’t kick in and everything was still fine!
Show Notes online - http://podcast.thinkingelixir.com/57
Elixir Community News
- https://github.com/phoenixframework/phoenix/pull/4377 – Phoenix v1.6 will officially use esbuild!
- https://twitter.com/sorentwo/status/1417462054114537476 – Parker Selbert identified the issue counts linked to JS packaging... ~30% of total issues!
- https://twitter.com/mcrumm/status/1417141537541033985 – Phoenix View can now be used as a separate package
- https://utils.zest.dev/gendiff – David's tool for diffing generated projects. Includes support for the different flags.
- https://hexdocs.pm/k8s/changelog.html#1-0-0-2021-07-19 – The "k8s" library was updated and got a 1.0 release tag
- https://pragprog.com/titles/lmelixir/testing-elixir/ – The Book "Testing Elixir" launched in Beta
- https://twitter.com/remote/status/1414919265841557510 – Remote raises $150M and is using Elixir
- https://github.com/livebook-dev/livebook/pull/418 – Livebook UX improvement to restart runtime when Mix.install packages changed
- https://github.com/livebook-dev/livebook/pull/449 – Support for "branching sections" added to Livebook notebooks
- https://github.com/wojtekmach/notebooks/blob/main/client_server.livemd – Wojtek Mach created a notebook using branching sections to create a client-server setup in a single notebook
- https://github.com/livebook-dev/livebook/pull/441 – Livebook notebooks can link to each other
- https://erlang.org/pipermail/erlang-questions/2021-July/101209.html – Frank Hunleth of the Nerves project encountered performance issue when shutting down a node. Interesting discussion with the OTP Team.
- https://github.com/erlang/otp/pull/5032 – OTP PR opened for speeding up controlled shutdowns
- https://github.com/fhunleth/nerves_livebook/releases/tag/v0.2.14 – Nerves 1.7.9 is out with minor updates to all systems and toolchain
- https://nervesconf.com/ – Nerves Conf October 11 in Austin Texas, timed with ElixirConf
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
- https://elixirforum.com/t/implementing-a-distributed-users-counter/39609 – Link to Cade's Elixir Forum post with discussion
- https://gist.github.com/cadebward/c24fc4aced526d9d35bb00a6a8140784 – Gist of the Cade's working solution
- https://www.vidangel.com/ – First incarnation of company before pivot
- https://invest.angel.com/ – Angel Studios kickstarter like projects
- https://elixirforum.com/
- http://angel.com/apply – Angel Studios is hiring!
Guest Information
- https://twitter.com/cadebward – on Twitter
- https://github.com/cadebward/ – on Github
Find us online
- Message the show - @ThinkingElixir
- Email the show - show@thinkingelixir.com
- Mark Ericksen - @brainlid
- David Bernheisel - @bernheisel
- Cade Ward - @cadebward