This is not a proxy issue. I am looking for some ideas to work around my issue which is this:
- A host is running Chrome browser with 20-30 open tabs to various Google docs. All connections use http2. There is no issue in read/write/sharing of docs.
- Host setting is changed so that all HTTP/HTPS traffic now goes through proxy with http2 disabled. Thus, any new connection between Chrome and Google docs origin server through the proxy will be HTTP/1.1
- Almost immediately (as observed via developer tools), various Google docs API begin to time out. Any update on Google doc begins to take a long time (observed 20 seconds to over a minute).
What is happening: As chrome opens new connections to docs.google.com domain through the proxy, there is a limit of 6 connections per domain. On a HTTP/1.1 connection, one of the operations (bind) blocks a connection for almost a minute. This causes a big queue buildup for various operations from all across the tabs since they all contend for 6 connections to the same domain.
How can we work around this? Ideally Chrome should switch to using numbered domain (for example 5.docs.google.com) per tab so that the 6 connections per domain isn’t hit when we switch over to proxy in HTTP/1.1 mode. Incidentally, this is exactly what happens if tabs are opened when Chrome connects to Google Docs directly through proxy in HTTP/1.1 mode.
Note that I would not see this issue if running the proxy in http2 mode. I need to run proxy in HTTP/1.1 mode for some tests.