As part of switching to a nonblocking proxy mechanism, we switched the HTTP client transport from the Java blocking I/O client to Akka HTTP. By default, Akka HTTP only allows up to 32 concurrent connections to a host. This includes proxied event streams (which are long-running connections). Further, some response sizes can be quite large and take a long time to transfer. Since these are sent in streaming fashion, the HTTP connection is alive between the standby and the master until the client is finished consuming the response.
As such, some users have already hit some issues around this.
I propose that we raise the limit.
- A new default limit is proposed, and is based in a reasonable model for moderate usage.
- Modify the default limit to that value.
- Document the change in the change log
- Add a command line flag to make this more easily customizable, and just for the standby instance.