From 26f20787baf632a2c32acf0541b077e6328dcb35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=81=93=E4=B8=80?= Date: Thu, 28 Aug 2025 15:08:25 +0800 Subject: [PATCH] perf(net/gclient): optimize default http.Transport connection pool configuration (#4390) --- net/gclient/gclient.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/net/gclient/gclient.go b/net/gclient/gclient.go index 10444a9fe..0720242aa 100644 --- a/net/gclient/gclient.go +++ b/net/gclient/gclient.go @@ -11,6 +11,7 @@ import ( "crypto/rand" "crypto/tls" "fmt" + "net" "net/http" "os" "time" @@ -66,7 +67,20 @@ func New() *Client { TLSClientConfig: &tls.Config{ InsecureSkipVerify: true, }, - DisableKeepAlives: true, + DisableKeepAlives: true, + MaxIdleConns: 100, + MaxIdleConnsPerHost: 50, + MaxConnsPerHost: 100, + IdleConnTimeout: 90 * time.Second, + ResponseHeaderTimeout: 30 * time.Second, + ExpectContinueTimeout: 1 * time.Second, + TLSHandshakeTimeout: 10 * time.Second, + ForceAttemptHTTP2: true, + DisableCompression: false, + DialContext: (&net.Dialer{ + Timeout: 30 * time.Second, + KeepAlive: 30 * time.Second, + }).DialContext, }, }, header: make(map[string]string),