Hi, On Wed, Nov 7, 2018 at 7:09 PM Michael McMahon <[email protected]> wrote: > > That's useful feedback Simone. It sounds like this is a somewhat > different issue though. > How would you recommend determining when to open a new connection to > maximise throughput?
Opening a new connection and maximizing throughput may not be related, so let's say just opening a new connection. The client must not exceed the server's max_concurrent_streams. When it does, it may open a new connection. This would solve the OP problem. Then, have the client configurable with the max number of connections per origin (which can be defaulted at 1 for HTTP/2 - and to a larger value for HTTP/1.1). Once you hit that too, start queuing (or rejecting). Maximizing throughput is a different story, as it depends on a number of factors that are volatile (e.g. the status of the network in that precise moment, the bandwidth*delay product, dynamic adjustments of the HTTP/2 flow control window, etc.). -- Simone Bordet --- Finally, no matter how good the architecture and design are, to deliver bug-free software with optimal performance and reliability, the implementation technique must be flawless. Victoria Livschitz
