Enhance reverse proxy transport configuration for improved performance. Updated reverse.go to set a direct transport for the reverse proxy, ensuring more efficient request handling. Modified gateway.go to utilize the direct transport with customized connection settings, optimizing idle connections and timeouts.
This commit is contained in:
1 parent
5934d059a4
commit
e1c6b2ab49
3 files changed
+23
-9
No files matched your search
@@ -28,15 +28,13 @@ type Gateway struct {
|
||||
|
||||
// NewGateway builds handlers and reverse proxies from parsed config.
|
||||
func NewGateway(p *config.Parsed, log *slog.Logger) (*Gateway, error) {
|
||||
t := &http.Transport{
|
||||
Proxy: http.ProxyFromEnvironment,
|
||||
MaxIdleConns: 64,
|
||||
IdleConnTimeout: 90 * time.Second,
|
||||
TLSHandshakeTimeout: 10 * time.Second,
|
||||
ExpectContinueTimeout: 1 * time.Second,
|
||||
DialContext: (&net.Dialer{Timeout: 5 * time.Second, KeepAlive: 30 * time.Second}).DialContext,
|
||||
ResponseHeaderTimeout: 120 * time.Second,
|
||||
}
|
||||
t := proxy.DirectTransport()
|
||||
t.MaxIdleConns = 64
|
||||
t.IdleConnTimeout = 90 * time.Second
|
||||
t.TLSHandshakeTimeout = 10 * time.Second
|
||||
t.ExpectContinueTimeout = 1 * time.Second
|
||||
t.DialContext = (&net.Dialer{Timeout: 5 * time.Second, KeepAlive: 30 * time.Second}).DialContext
|
||||
t.ResponseHeaderTimeout = 120 * time.Second
|
||||
g := &Gateway{
|
||||
parsed: p,
|
||||
proxies: make(map[string]*httputil.ReverseProxy),
|
||||
|
||||
Reference in new issue
Block a user