Stats and other fixes
Pre-release
Pre-release
Stat (#152) * Base statistics gathering and monitoring * Control rate of HTTP/1 writes (#180) * HTTP/1 only writes 1 message at a time. This avoids bloating memory with unsent messages. This also helps improve the accuracy of our upload stats. Still needs tweaking to deal with websocket upgrade edge-cases. * Install websocket handler the moment 101 response comes in, do not wait for stream to complete. Remove hacks where 101 response completed a stream, no 1xx response should complete a stream. * Simplify confusing list logic. Remove the server-only `waiting_stream_list`. Do a simple scan over available streams to find the next one to work on. This is O(N) when pipelining, but I hear that no one does HTTP/1 pipelining, so in that case O(N=1). We can always re-optimize if we have data that pipelining is super popular and this is a hotspot. * Update * Windows warning Co-authored-by: Michael Graeb <[email protected]>