diff --git a/agent/utils/cloud_storage/client/ali.go b/agent/utils/cloud_storage/client/ali.go index 8f897435d..6b10f96a4 100644 --- a/agent/utils/cloud_storage/client/ali.go +++ b/agent/utils/cloud_storage/client/ali.go @@ -403,6 +403,7 @@ func (a aliClient) uploadPart(uri string, reader io.Reader) error { return err } client := &http.Client{} + defer client.CloseIdleConnections() response, err := client.Do(req) if err != nil { return err @@ -428,6 +429,7 @@ func (a aliClient) handleDownload(uri string, target string) error { req.Header.Add("origin", "https://www.aliyundrive.com") req.Header.Add("referer", "https://www.aliyundrive.com/") client := &http.Client{} + defer client.CloseIdleConnections() response, err := client.Do(req) if err != nil { return err diff --git a/agent/utils/cloud_storage/client/google_drive.go b/agent/utils/cloud_storage/client/google_drive.go index 4450cf6eb..14a0b4687 100644 --- a/agent/utils/cloud_storage/client/google_drive.go +++ b/agent/utils/cloud_storage/client/google_drive.go @@ -226,6 +226,7 @@ func (g *googleDriveClient) handleDownload(urlItem string, target string) error Proxy: http.ProxyURL(proxyURL), }, } + defer client.CloseIdleConnections() response, err := client.Do(req) if err != nil { return err diff --git a/agent/utils/cloud_storage/client/onedrive.go b/agent/utils/cloud_storage/client/onedrive.go index b786d09a5..1e0abd7a6 100644 --- a/agent/utils/cloud_storage/client/onedrive.go +++ b/agent/utils/cloud_storage/client/onedrive.go @@ -213,6 +213,7 @@ func RefreshToken(grantType string, tokenType string, varMap map[string]interfac } data.Set("redirect_uri", loadParamFromVars("redirect_uri", varMap)) client := &http.Client{} + defer client.CloseIdleConnections() url := "https://login.microsoftonline.com/common/oauth2/v2.0/token" if isCN == "true" { url = "https://login.chinacloudapi.cn/common/oauth2/v2.0/token" diff --git a/agent/utils/files/file_op.go b/agent/utils/files/file_op.go index 58e429f42..5697bc313 100644 --- a/agent/utils/files/file_op.go +++ b/agent/utils/files/file_op.go @@ -274,6 +274,7 @@ func (f FileOp) DownloadFileWithProcess(url, dst, key string, ignoreCertificate TLSClientConfig: &tls.Config{InsecureSkipVerify: true}, } } + defer client.CloseIdleConnections() request, err := http.NewRequest("GET", url, nil) if err != nil { return nil diff --git a/agent/utils/req_helper/core.go b/agent/utils/req_helper/core.go index 8177226cc..bf8e3cdd6 100644 --- a/agent/utils/req_helper/core.go +++ b/agent/utils/req_helper/core.go @@ -30,6 +30,7 @@ func PostLocalCore(url string) error { return err } client := &http.Client{} + defer client.CloseIdleConnections() resp, err := client.Do(req) if err != nil { return err diff --git a/agent/utils/req_helper/request.go b/agent/utils/req_helper/request.go index f0b23c08f..40c119a18 100644 --- a/agent/utils/req_helper/request.go +++ b/agent/utils/req_helper/request.go @@ -19,6 +19,7 @@ func HandleGet(url string) (*http.Response, error) { Timeout: time.Second * 300, } client.Transport = loadRequestTransport() + defer client.CloseIdleConnections() req, err := http.NewRequestWithContext(context.Background(), "GET", url, nil) if err != nil { diff --git a/agent/utils/ssl/acme.go b/agent/utils/ssl/acme.go index 75efc9f49..c24f79959 100644 --- a/agent/utils/ssl/acme.go +++ b/agent/utils/ssl/acme.go @@ -181,6 +181,7 @@ func getZeroSSLEabCredentials(email string) (*zeroSSLRes, error) { req.Header.Set("Content-Type", "application/json") client := &http.Client{} + defer client.CloseIdleConnections() resp, err := client.Do(req) if err != nil { return nil, err diff --git a/core/utils/cloud_storage/client/ali.go b/core/utils/cloud_storage/client/ali.go index ee0b52f9c..73f109694 100644 --- a/core/utils/cloud_storage/client/ali.go +++ b/core/utils/cloud_storage/client/ali.go @@ -301,6 +301,7 @@ func (a aliClient) uploadPart(uri string, reader io.Reader) error { return err } client := &http.Client{} + defer client.CloseIdleConnections() response, err := client.Do(req) if err != nil { return err diff --git a/core/utils/cloud_storage/client/onedrive.go b/core/utils/cloud_storage/client/onedrive.go index 0ca8c6ef8..da2dc105c 100644 --- a/core/utils/cloud_storage/client/onedrive.go +++ b/core/utils/cloud_storage/client/onedrive.go @@ -123,6 +123,7 @@ func RefreshToken(grantType string, tokenType string, varMap map[string]interfac } data.Set("redirect_uri", loadParamFromVars("redirect_uri", varMap)) client := &http.Client{} + defer client.CloseIdleConnections() url := "https://login.microsoftonline.com/common/oauth2/v2.0/token" if isCN == "true" { url = "https://login.chinacloudapi.cn/common/oauth2/v2.0/token" diff --git a/core/utils/req_helper/proxy_local/req_to_local.go b/core/utils/req_helper/proxy_local/req_to_local.go index cb2eb3419..4b82dbed4 100644 --- a/core/utils/req_helper/proxy_local/req_to_local.go +++ b/core/utils/req_helper/proxy_local/req_to_local.go @@ -5,14 +5,15 @@ import ( "encoding/json" "errors" "fmt" - "github.com/1Panel-dev/1Panel/core/app/dto" - "github.com/1Panel-dev/1Panel/core/i18n" "io" "net" "net/http" "net/url" "os" "strings" + + "github.com/1Panel-dev/1Panel/core/app/dto" + "github.com/1Panel-dev/1Panel/core/i18n" ) func NewLocalClient(reqUrl, reqMethod string, body io.Reader) (interface{}, error) { @@ -31,6 +32,7 @@ func NewLocalClient(reqUrl, reqMethod string, body io.Reader) (interface{}, erro client := &http.Client{ Transport: transport, } + defer client.CloseIdleConnections() parsedURL, err := url.Parse("http://unix") if err != nil { return nil, fmt.Errorf("handle url Parse failed, err: %v \n", err) diff --git a/core/utils/req_helper/requset.go b/core/utils/req_helper/requset.go index 7610ac230..776093dc1 100644 --- a/core/utils/req_helper/requset.go +++ b/core/utils/req_helper/requset.go @@ -87,6 +87,7 @@ func handleGetWithTransport(url string, transport *http.Transport) (*http.Respon Timeout: time.Second * 300, } client.Transport = transport + defer client.CloseIdleConnections() req, err := http.NewRequestWithContext(context.Background(), "GET", url, nil) if err != nil {