我在Go http软件包中看到:
MaxIdleConnsPerHost int
但是我看不到整个HTTP客户端的任何MaxConns,为什么?
如果我仅限制MaxIdleConns(针对整个客户端),是否有可能超出此活动连接的限制? (我认为答案很简单,但是仅是理论上的吗?)
来自文档:
// MaxIdleConnsPerHost, if non-zero, controls the maximum idle
// (keep-alive) connections to keep per-host. If zero,
// DefaultMaxIdleConnsPerHost is used.
MaxIdleConnsPerHost int
// MaxConnsPerHost optionally limits the total number of
// connections per host, including connections in the dialing,
// active, and idle states. On limit violation, dials will block.
//
// Zero means no limit.
MaxConnsPerHost int
我看不到整个http客户端的任何MaxConns,为什么?
因为没有。如果您不希望向该客户端发出N个并发请求,请执行以下操作:只是不要这样做。 (如果客户限制ist将是主要的皮塔饼。)
如果我仅限制MaxIdleConns(针对整个客户端),是否有可能超过此活动连接的限制?
是。 MaxIdlConns限制空闲连接而不是非空闲连接。