Each stream has its own window, and the connection has one shared window. Roadrunner looks at the connection window first. If a stream goes over only its own window, just that stream is stopped, and the connection and the other streams keep running. The whole connection is closed only when the data goes over the shared connection window. So one bad stream does not hurt a good connection. The window sizes are listener options too (conn_window and stream_window under http2), see docs/resource_limits.md.
No date yet. The core works well and is well tested, but I want to be sure the API won’t change much before I call it 1.0.
No plans for a Plug adapter right now. My focus is Erlang for now. Maybe later if there’s interest. Not easy to balance life + OSS
HttpArena is a community-run benchmark for HTTP servers across many protocols and workloads (HTTP/1.1, HTTP/2, HTTP/3, gRPC, WebSocket). It is an open replacement for the TechEmpower Framework Benchmarks, which were archived a few months ago.
It would be really nice to see more BEAM servers there too, so we can compare across the ecosystem.