I am basically making a health check crawler to a huge list of domains. I have a Golang script that creates ~256 routines that make requests to the list of domains. I am using the same client with the following transport configuration:
# init func
this.client = &http.Client{
        Transport: &http.Transport{
            ForceAttemptHTTP2:   true,
            TLSHandshakeTimeout: TLSHandShakeTimeout,
            TLSClientConfig:     &tls.Config{InsecureSkipVerify: true},
            MaxConnsPerHost:     -1,
            DisableKeepAlives:   true,
        },
        Timeout: RequestTimeout,
    }
... 
# crawler func
req, err := http.NewRequestWithContext(this.ctx, "GET", opts.Url, nil)
if err != nil {
    return nil, errors.Wrap(err, "failed to create request")
}
res, err := this.client.Do(req)
if err != nil {
    return nil, err
}
defer res.Body.Close()
...
I ran netstat -anp  | wc -l and can see over 2000+ connections with TIME_WAIT.
 
    