Package httpproxy implements etcd httpproxy. The etcd proxy acts as a reverse http proxy forwarding client requests to active etcd cluster members, and does not participate in consensus.
Package Files ¶
const ( // DefaultMaxIdleConnsPerHost indicates the default maximum idle connection // count maintained between proxy and each member. We set it to 128 to // let proxy handle 128 concurrent requests in long term smoothly. // If the number of concurrent requests is bigger than this value, // proxy needs to create one new connection when handling each request in // the delta, which is bad because the creation consumes resource and // may eat up ephemeral ports. DefaultMaxIdleConnsPerHost = 128 )
func NewHandler ¶
func NewHandler(t *http.Transport, urlsFunc GetProxyURLs, failureWait time.Duration, refreshInterval time.Duration) http.Handler
NewHandler creates a new HTTP handler, listening on the given transport, which will proxy requests to an etcd cluster. The handler will periodically update its view of the cluster.