Elixir in an Enterprise Telecommunications Product
summary
An existing C PBX gateway is rewritten in Elixir, keeps one C sun rpc piece, and moves from prototype to product verification lab with an alpha site next week. Architecture uses OTP supervisors, many gen_fsm-style state machines per device, and a phone simulator; target scale is 60 gateways / 10,000 phones. Tradeoffs: maintainability and hot code reloads vs about a 40–50% capacity loss compared to C. Tooling includes custom logging macros, binary parsers, c-structure macros, exrm plus an exrm rpm plugin for packaging.
AI-written summary · about
chapters (28)
- 0:00Introduction
- 1:25RealTime Concurrent Embedded Project
- 4:19Who am I
- 5:50Why Elixir
- 6:46Product
- 8:20Scaling
- 8:53TCP UDP
- 9:53Phone Features
- 10:56Architecture
- 12:28Performance
- 14:11Logging
- 16:18Config parser
- 18:48Command
- 19:17Macro
- 21:05Macros
- 22:25Hex Logging
- 23:47Implementation
- 24:48Test Case
- 26:12Packaging and Installation
- 28:42Mocking
- 31:11Fault Tolerance
- 33:50Challenges
- 36:45Fun
- 37:58Elixir Application
- 40:26Elixir Macros
- 42:31Erickson Phone
- 43:50Bitwise Logging
- 46:20Continuous Delivery
related talks
47mShipping a Replacement Architecture in Elixir
15mMicroservices with Elixir
45mMigrating an Invoicing System to Elixir/Erlang
37mFrom the ground to the stars
45mSelling Food With Elixir
48mThe C1K Problem (...)
27mScalable distributed systems from grounds up in Elixir
40mBuilding a credit card issuer with Elixir
