Tomcat运行一段时间后访问变慢

时间:2021-11-05 15:23:14
Tomcat运行一段时间后访问变慢,但是cpu,内存,日志都没有异常。

19 个解决方案

#1


并发高了?

#2


是不是你的webapps下面的工程太多了,启动的时候都要发布当然慢了。

#3


有可能是数据压力太大吧……

#4


引用 1 楼  的回复:
并发高了?

用户数在100左右,并发量应该不高的。

#5


配置连接池了没?

#6


您得说明白是怎么变慢了。访问变慢?可以打印一下后台日志看看是哪一步耗时变长了。是机器自身的网络问题,还是中间处理过程。

#7


数据库的数据有没问题

#8


引用 6 楼  的回复:
您得说明白是怎么变慢了。访问变慢?可以打印一下后台日志看看是哪一步耗时变长了。是机器自身的网络问题,还是中间处理过程。

是一个flex为客户端的项目 打开登录页面就很慢,重启后就好了,可以排除网络问题。

#9


引用 5 楼  的回复:
配置连接池了没?

用的c3p0的连接池

#10


该回复于2012-04-19 13:07:21被版主删除

#11


引用 2 楼  的回复:
是不是你的webapps下面的工程太多了,启动的时候都要发布当然慢了。

只部署了一个工程,不是启动慢,是系统运行了几天后,突然慢到几乎无法访问。

#12


那就得看看你有没有资源没释放。

#13


应该是你的JVM GC太频繁了,特别是full collection的GC会加大应用程序暂停执行的时间。
建议1.review一下代码,减少对象创建。2. 调整JVM的参数,比如加大堆内存的大小

#14


去tomcate文件夹里看看webapps这个文件夹,估计是部署的的工程太多了,把一些没用的删除了,每次启动都会自动部署,当然浪费时间了。以后再用那些文件的话重新部署就行了。

#15


引用 11 楼  的回复:
引用 2 楼  的回复:

是不是你的webapps下面的工程太多了,启动的时候都要发布当然慢了。

只部署了一个工程,不是启动慢,是系统运行了几天后,突然慢到几乎无法访问。



这里有很大的一个可能性,是程序在运行时打开了某个资源,你没有关闭,一开始10个人访问,10个资源没有关闭,每增加一个人访问,就继续占据系统资源,当系统资源被耗尽时,你系统就非常的慢,最后崩了~

#16


您好,楼主,我现在也遇见这个问题了,你是怎么解决的,请赐教...

#17


遇到同样的问题,进入 work 文件夹下删除里边的东西后访问速度提高了不少。。

#18


引用 1 楼 a199231 的回复:
并发高了?
请问并发高了,服务器运行一定时间后会变慢吗

#19


我也遇到这个问题了,楼主怎么解决的

#1


并发高了?

#2


是不是你的webapps下面的工程太多了,启动的时候都要发布当然慢了。

#3


有可能是数据压力太大吧……

#4


引用 1 楼  的回复:
并发高了?

用户数在100左右,并发量应该不高的。

#5


配置连接池了没?

#6


您得说明白是怎么变慢了。访问变慢?可以打印一下后台日志看看是哪一步耗时变长了。是机器自身的网络问题,还是中间处理过程。

#7


数据库的数据有没问题

#8


引用 6 楼  的回复:
您得说明白是怎么变慢了。访问变慢?可以打印一下后台日志看看是哪一步耗时变长了。是机器自身的网络问题,还是中间处理过程。

是一个flex为客户端的项目 打开登录页面就很慢,重启后就好了,可以排除网络问题。

#9


引用 5 楼  的回复:
配置连接池了没?

用的c3p0的连接池

#10


该回复于2012-04-19 13:07:21被版主删除

#11


引用 2 楼  的回复:
是不是你的webapps下面的工程太多了,启动的时候都要发布当然慢了。

只部署了一个工程,不是启动慢,是系统运行了几天后,突然慢到几乎无法访问。

#12


那就得看看你有没有资源没释放。

#13


应该是你的JVM GC太频繁了,特别是full collection的GC会加大应用程序暂停执行的时间。
建议1.review一下代码,减少对象创建。2. 调整JVM的参数,比如加大堆内存的大小

#14


去tomcate文件夹里看看webapps这个文件夹,估计是部署的的工程太多了,把一些没用的删除了,每次启动都会自动部署,当然浪费时间了。以后再用那些文件的话重新部署就行了。

#15


引用 11 楼  的回复:
引用 2 楼  的回复:

是不是你的webapps下面的工程太多了,启动的时候都要发布当然慢了。

只部署了一个工程,不是启动慢,是系统运行了几天后,突然慢到几乎无法访问。



这里有很大的一个可能性,是程序在运行时打开了某个资源,你没有关闭,一开始10个人访问,10个资源没有关闭,每增加一个人访问,就继续占据系统资源,当系统资源被耗尽时,你系统就非常的慢,最后崩了~

#16


您好,楼主,我现在也遇见这个问题了,你是怎么解决的,请赐教...

#17


遇到同样的问题,进入 work 文件夹下删除里边的东西后访问速度提高了不少。。

#18


引用 1 楼 a199231 的回复:
并发高了?
请问并发高了,服务器运行一定时间后会变慢吗

#19


我也遇到这个问题了,楼主怎么解决的

#20