/plushcap/analysis/mux/mux-real-time-dashboards-powered-by-elixir

Real-time dashboards powered by Elixir

What's this blog post about?

The text discusses how Elixir and its web framework Phoenix were used to manage large real-time data sets across many channel topics for a real-time analytics product. It highlights the use of Erlang's OTP (Open Telecom Platform) and Phoenix's Channel / Presence features, which are designed for fault tolerant, concurrent systems. The text also covers how WebSockets were used to communicate between server and client, how dynamic supervision was implemented with Elixir's DynamicSupervisor feature, and how GenServer processes were used for information polling. Furthermore, it explains how process crashes were isolated, how subscription duplication across nodes was prevented using globally registered processes and process monitors, and how socket subscription state was kept server-side with Presence. The text concludes by discussing some technical considerations such as the eventually consistency of Presence, potential race conditions, zombie processes, soft real time, and resource management.

Company
Mux

Date published
Oct. 8, 2018

Author(s)
Jacqui Manzi

Word count
2260

Language
English

Hacker News points
None found.


By Matt Makai. 2021-2024.