java – JVM Tomcat Spring MVC应用程序超时等待连接池
发布时间:2020-12-15 02:17:14 所属栏目:Java 来源:网络整理
导读:我在tomcat上运行的 spring应用程序打开了很多与localhost的连接,如下所示: tcp6 1 0 localhost:4431 localhost:44178 CLOSE_WAIT 2393/java tcp6 1 0 localhost:4431 localhost:44279 CLOSE_WAIT 2393/java tcp6 1 0 localhost:4431 localhost:44264 CLOSE
我在tomcat上运行的
spring应用程序打开了很多与localhost的连接,如下所示:
tcp6 1 0 localhost:4431 localhost:44178 CLOSE_WAIT 2393/java tcp6 1 0 localhost:4431 localhost:44279 CLOSE_WAIT 2393/java tcp6 1 0 localhost:4431 localhost:44264 CLOSE_WAIT 2393/java tcp6 1 0 localhost:4431 localhost:44160 CLOSE_WAIT 2393/java tcp6 1 0 localhost:4431 localhost:44224 CLOSE_WAIT 2393/java 并导致超时等待连接池. 你知道连接是什么吗? 我的server.xml看起来像这样: <?xml version='1.0' encoding='utf-8'?> <Server port="8005" shutdown="SHUTDOWN"> <Listener className="org.apache.catalina.core.JasperListener" /> <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> <Realm className="org.apache.catalina.realm.MemoryRealm" /> <GlobalNamingResources> <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> </GlobalNamingResources> <Service name="Catalina"> <Connector port="8080" protocol="HTTP/1.1" compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla,traviata" compressableMimeType=" text/html,text/xml,text/plain,text/css,text/javascript,text/json,application/x-javascript,application/javascript,application/json,application/x-font-woff,image/png,image/jpeg,image/gif,image/svg+xml " connectionTimeout="20000" URIEncoding="UTF-8" maxThreads="10000" maxConnections="-1" redirectPort="4431" /> <Connector port="4431" protocol="HTTP/1.1" compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla,image/svg+xml " connectionTimeout="20000" URIEncoding="UTF-8" maxThreads="10000" maxConnections="-1" scheme="https" secure="true" clientAuth="false" proxyPort="443" /> <Engine name="Catalina" defaultHost="localhost"> <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %A %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"" /> </Host> </Engine> </Service> </Server> 端口4431是主连接器的端口.似乎应用程序调用自己. 解决方法
看来你的SSL配置没有以tomcat结尾,那么你可以完全删除4431端口的连接器,并用proxyPort =“443”替换8080连接器的redirectPort属性
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |