BEAM There, Done That with Mat Trudel on Bandit, HTTP Internals and One Process Per Connection

New BEAM There, Done That episode relevant to anyone building on the BEAM, not just Phoenix users.

The most Erlang-relevant discussion: each connection gets its own process, and when an error occurs anywhere in request handling the resulting trace is entirely BEAM-native - no opaque C boundary. You can read it top to bottom.

Mat also covers the HTTP parser security surface in terms this community will recognise: resource consumption attacks, connections held open indefinitely, oversized inputs. Protocol-level problems independent of language that foundational libraries have to solve correctly.

The episode closes on what it looks like to maintain infrastructure at this level when AI-generated contributions start arriving - there’s an HTTP/3 PR open on the repo and the reasoning behind leaving it unmerged is worth hearing.

1 Like