已经排查过的问题:
1.首先改的是 Tomcat 配置,改了 maxThreads=10000 ,maxConnections=10000 ,acceptCount=-1 。
2.后来网上搜到说是可能是 nginx 、tomcat 的 keepalive 配置不匹配有关,这里没有用 nginx 。
3.用 jprofiler 看到的情况是,线程不停地在加,但是大量的线程进入了 timed waiting 状态,后来用 jstack 命令看这些线程,没有显示出服务里边具体的代码行号,显示的是
tomcat 的 taskQueue.poll 方法之后,后来用 netstat 去看有很多 tcp 连接在服务端口处于 timed waiting 状态
感觉还是和 Tomcat 的配置有关,有没有懂这块的大佬,给个排查的思路,或者给个方向也行,谢谢啦