~/talk

BEAM Architecture Handbook

Talkat Functional Conf 2019 · 2019-11-13..11-17· [software-architecture]
slides:none on file

Practical rules for BEAM apps: use processes for isolation and concurrency but avoid raw spawn and prefer GenServer, Task.async/await and Task.async_stream (example: max_concurrency 20) for background, parallel and timeboxed work (Task.yield + shutdown). Design supervisors on a whiteboard, nest them so a top-level rest_for_one can restart worker subtrees while workers use one_for_one. Build connection managers that back off and use name-based pools or Registry instead of single bottleneck processes. Classify requests as at-most-once, at-least-once (retry + idempotence) or exactly-once (IDs + stored state).

AI-written summary · about

  1. 0:00Start
  2. 3:54processes
  3. 13:28SUPERVISION
  4. 14:02WHITE BOARD DESIGN
  5. 14:36STRATEGIES
  6. 20:19CONNECTION HANDLING
  7. 29:14connection - Pool.checkout (pool)
  8. 39:17DATA STORAGE
  9. 41:423 kinds of requests
  10. 44:38EXACTLY ONCE
  11. 46:49RESOURCES
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.