tomcat配置ssl后,出现频繁的访问超时状况。java
经过脚本(感谢UCloud的技术支持 金晓帆-):apache
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
发现:tomcat
ESTABLISHED状态实时数据量比较大,这个在tcp协议表明是创建通信。 tcp
大量ESTABLISHED状态就会把tomcat 443接口的最大线程给占满了。 spa
tomcat maxThreads默认值是200。线程
解决办法,就是增长配置的maxThreads,最终配置以下:code
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true" maxThreads="800" scheme="https" secure="true" keystoreFile="conf/jks" keystorePass="" clientAuth="false" sslProtocol="TLS" />