BEAM Architecture Handbook
summary
Covers concrete BEAM patterns: when to use processes vs modules, prefer Tasks.await and Task.Supervisor for background work, and use gen_server or gen_statem for stateful behavior. Shows supervisor layouts with Supervisor strategies and nesting to avoid cascading restarts, and recommends connection managers with async init, exponential backoff and pooling (checkout or registry-based pools) for Redis or TCP. Explains at-most/at-least/exactly-once semantics and when to choose idempotence or durable tracking.
AI-written summary · about
chapters (11)
- 0:00Start
- 3:54processes
- 13:28SUPERVISION
- 14:02WHITE BOARD DESIGN
- 14:36STRATEGIES
- 20:19CONNECTION HANDLING
- 29:14connection - Pool.checkout (pool)
- 39:17DATA STORAGE
- 41:423 kinds of requests
- 44:38EXACTLY ONCE
- 46:49RESOURCES
related talks
37mThe BEAM in the Cloud Native era
51mThe Erlang VM or How I Started Loving Parallel Progamming
42mThe Soul of Erlang and Elixir
10mBack to the Future
52mConcurrency Oriented Programming in a Modern World
01h 01mThe Erlang Ecosystem
44mBuilding Distributed Applications with Event-driven Architecture
28mCRDTs and the BEAM
