You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using both an http proxy and setting MaxConnectionsPerServer, SocketsHttpHandler will limit the total number of connections it will open to MaxConnectionsPerServer.
These connections are not shared, so opening some connections to host foo might mean all requests to bar will timeout until foo's pools expire and are reclaimed.
This affects requests that would establish the proxy connection using a CONNECT request - all https and insecure ws requests (HttpConnectionKind.SslProxyTunnel and .ProxyTunnel).
It can be mitigated by ignoring the connection limit on HttpConnectionKind.ProxyConnect connection pools. This mirrors the behavior for http requests where we just connect to the proxy directly without going through the PoolManager for the connect request.
The problem won't be hit if a single handler instance is used for only 1 host.
The text was updated successfully, but these errors were encountered:
Tagging subscribers to this area: @dotnet/ncl
See info in area-owners.md if you want to be subscribed.
Issue Details
When using both an http proxy and setting MaxConnectionsPerServer, SocketsHttpHandler will limit the total number of connections it will open to MaxConnectionsPerServer.
These connections are not shared, so opening some connections to host foo might mean all requests to bar will timeout until foo's pools expire and are reclaimed.
This affects requests that would establish the proxy connection using a CONNECT request - all https and insecure ws requests (HttpConnectionKind.SslProxyTunnel and .ProxyTunnel).
It can be mitigated by ignoring the connection limit on HttpConnectionKind.ProxyConnect connection pools. This mirrors the behavior for http requests where we just connect to the proxy directly without going through the PoolManager for the connect request.
The problem won't be hit if a single handler instance is used for only 1 host.
When using both an http proxy and setting
MaxConnectionsPerServer
,SocketsHttpHandler
will limit the total number of connections it will open toMaxConnectionsPerServer
.These connections are not shared, so opening some connections to host
foo
might mean all requests tobar
will timeout untilfoo
's pools expire and are reclaimed.This affects requests that would establish the proxy connection using a
CONNECT
request - allhttps
and insecurews
requests (HttpConnectionKind.SslProxyTunnel
and.ProxyTunnel
).It can be mitigated by ignoring the connection limit on
HttpConnectionKind.ProxyConnect
connection pools. This mirrors the behavior forhttp
requests where we just connect to the proxy directly without going through the PoolManager for the connect request.The problem won't be hit if a single handler instance is used for only 1 host.
The text was updated successfully, but these errors were encountered: