Hi, We are having an issue with Tomcat application accessing through proxy and details are below. Can you please check and share your feedback. Issue: We have an application(tomcat) accessed through proxy as below. Also, we have MaxRequestsPerChild setting as 100 Whenever MaxRequestsPerChild reached its limit, a new process is started but the application become unresponsive. It seems that new process doesn’t service any requests We have to restart httpd to recover that Log: -
Access.log doesn’t show any requests for new child -
Error_log shows that
a)
workers are initiated for new process but it didn’t service any requests
b)
c)
processing has stuck for a minute due to some reason [Fri Aug 08 16:09:17 2014] [debug] ssl_engine_kernel.c(2118): [client 127.0.0.1] Certificate Verification, depth 0 [subject: /C=y/ST=y/L=y/O=y/OU=y/CN=y, issuer: /C=y/ST=y/L=y/O=y/OU=y/CN=y, serial: xyz] [Fri Aug 08 16:10:12 2014] [info] [client 10.150.90.25] Connection to child 6 established (server *:<port number from client>)
d)
SSL handshake has started but didn’t complete for 4 connections related to new process. There are no errors related to ssl
$ grep -i handshake errorlog.2014-08-08-07_06_44 | grep -c start 707 $ grep -i handshake errorlog.2014-08-08-07_06_44 | grep -c done 703 $ Apache version: 2.2.15 Proxy setting: SSLProxyEngine On SSLProxyCipherSuite ALL SSLProxyMachineCertificateFile /var/ssl/proxy.pem proxyPass /app1
https://localhost:<port number>/app1 (Tomcat) Worker configuration: KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 <IfModule worker.c> StartServers 1 MaxClients 25 MinSpareThreads 12 MaxSpareThreads 25 ThreadsPerChild 25 ServerLimit 1 MaxRequestsPerChild 100 MaxMemFree 50 </IfModule> Thanks & Regards, Krishna |