tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Schultz <ch...@christopherschultz.net>
Subject Re: CLOSE_WAIT between Application (Tomcat) and Apache HTTPD
Date Thu, 11 May 2017 15:34:54 GMT
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Adhavan,

On 5/11/17 10:57 AM, Adhavan Mathiyalagan wrote:
> *Tomcat Configuration*
> 
> HTTP/1.1  and APR
> 
> <Connector port="${HTTP_PORT}" protocol="HTTP/1.1"
> 
> connectionTimeout="20000"
> 
> redirectPort="8443"  maxHttpHeaderSize="8192" />

Okay, so you have a number of defaults taking effect, including:

maxConnections="8192"
maxKeepAliveRequests="100"
maxThreads="200"

... and you have no <Executor> configured, so the default executor
will be used, which performs no reduction of threads when they are idle.

> *HTTPD Configuration*
> 
> 
> Timeout 60 KeepAlive Off

Wow, really?

> MaxKeepAliveRequests 100 KeepAliveTimeout 15

That's ... confusing. Why do you disable KeepAlives, then configure
certain aspects of KeepAlive?

> <IfModule prefork.c> StartServers    256 MinSpareServers    100 
> MaxSpareServers    500 ServerLimit    2000 MaxClients    2000 
> MaxRequestsPerChild  4000 </IfModule>
> 
> <IfModule worker.c> StartServers         4 MaxClients         300 
> MinSpareThreads     25 MaxSpareThreads     75 ThreadsPerChild
> 25 MaxRequestsPerChild  0 </IfModule>

Which module is actually in use? pre-fork or worker?

For pre-fork, each of your httpd instances can generate 2000
simultaneous connections to Tomcat.

For worker MPM, each of your httpd instances can generate 300
simultaneous connections to Tomcat.

Tomcat is configured to handle a maximum of 200 simultaneous requests,
so you are very likely to have a situation where your web server is
handling far most load than Tomcat can. If you have a fairly high
percentage of web-server-only requests, then this is probably okay.
But if the overwhelming majority of requests to the web server will
need to proxied-over to your application server, then you are gong to
have problems.

The problem gets worse if you have more than one httpd instance.

> ServerName * Timeout 300

You have conflicting settings for "Timeout". You may want to review thos
e.

> ProxyPreserveHost On ProxyRequests Off <Proxy
> balancer://wsiservices> BalancerMember
> http://dl360x3799:8011/admx_ecms/view/services retry=60 status=+H
> route=dl360x3799.8011 BalancerMember
> http://dl360x3799:8012/admx_ecms/view/services retry=60 status=+H
> route=dl360x3799.8012 ProxySet stickysession=JSESSIONID ProxySet
> lbmethod=byrequests </Proxy>

Odd to have only "hot standbys" in a cluster.

> SetEnv force-proxy-request-1.0 1

This is a horrible idea for performance, mostly because it disabled
HTTP KeepAlives. Why are you doing this?

> SetEnv proxy-nokeepalive 1

This is a horrible idea for performance. Why are you disabling
KeepAlive for proxied requests?

- -chris
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAlkUhJwACgkQHPApP6U8
pFi7VRAAiZaMKSdmnCJt/Jy/S8K3uH+eT0hoIsN4TppH1UNxkFM7k9I0A0bN4x1I
eyFVC/Q1bDLP2DR1+pqYQipk0w5w3mgQsrqz4QEKFYkQy8LEzSq+/T6EskHLin3z
liGCgMzgJwaDejKczvgp0n3e0THI4iLPIeNvwmUROW7D7BcK76czio2C+lV0dBcU
7m+Ysfk2hpdim/DQMgZbgE6SNLs8PJ64S9DnCfZEDwgGZOJPWpAd83Y06LkxqHkj
t8ttklYdVQqUumDeeKIlL2e5lbxs2cbcedNo+L4CR+ZMzu/5diLMFmvoPffsfvA9
JnHAMShAFhS3Ktogv5m/DcBrcv2FTysOiTAs6MFYPS4TNARO959k7WEgnDvqZcAK
B4tp7UPABQVSBqeHnOElfdCHBFUv4rxtWPnEoRh7Rzf+RAknufXj2Tv3FxhY+cyy
941fajGhMGttCe3P51FmMrWNlKdKWFXHSRq4izn7v6cwM40PmO/Atlu9zk1HoSme
pqoM5DrXVsO8wknxmnm5ejhg/a3svMIrNs1tagEVCHPM7PQAJKXVw8Mxwqa7luGl
i4VJ1/hlT8ewxu/NBczbrJ3zJzsLW06Tq5IC2fa2WCDtKF4WEylCDIeZTaPdAbme
M+21Rr1H+U5XoQ0ZgFnn7JUFvfOeI/61NwyjTecSbew4M6qJGCk=
=HsXn
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message