问题描述
一、tomcat6 7进行压测没有问题轻轻松松过百。
二、tomcat9 进行压测,连5个并发都抵不住。
三、项目跑起来没有任何错误日志,IDEA控制台没有打印任何错误。
四、有关页面的请求页面能正常返回,但是关于涉及到数据库的请求tomcat就会毫无返回。
————————————————————————————
说到这其实问题就很明了了,很可能就出项目于数据库的交互上,但你空口无凭就这么猜测吗?显然是不行的。
为什么没有错误日志,tomcat没有任何返回呢?应该怎样找?
这时候可能很多人就没辙了,没有错误日志,我应该怎么改?
jvisualvm
这款工具是jdk给我们自带的一款虚拟机工具,在jdk的bin目录下,我们将其打开
可以看到我们启动的tomcat在里边有记录
双击打开我们还可以看到cpu、堆、类、线程的情况。当然我们注意的点不是这个,点击线程
可以看到线程的活动情况,我们可以通过配置log4j日志的方式,得到当前正在运行线程情况。线程与上图的线程对应。
打开dump,能看到那些线程执行出现了错误,他们的运行情况