三步解决Tomcat假死状态

时间:2024-03-24 09:40:37

作为一个Javaweb新手,你是否遇到过这样的问题,在我们实际开发中,有些网页点几下就点不动了,完全不能跳转了,一直处于加载状态,不报错,也加载不出来,这是什么问题?

Tomcat假死

我们把以上的状态称之为假死状态,假死状态涉及到一些运维的问题,这里不再详细解释原因,直接给出大家解决方案。

一、修改配置文件 

在我们的项目列表中,找到servers文件夹下的server.xml,大约在63行左右,修改它,增加acceptCount=“500”和maxThreads=“400”,你可以修改这两个值,但不要太大,且后者应大于前者。

三步解决Tomcat假死状态

    <Connector URIEncoding="UTF-8" acceptCount="500" connectionTimeout="20000" maxThreads="400" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

二、及时关闭数据库连接

Tomcat假死,很很大一部分原因来自于我们的连接数太多,但是我们并没有用那么多连接,这是因为我们在关闭Tomcat的时候,那些连接不会自动关闭,会有一个存活时间,大概5分钟左右,所以,我们在使用结束后,一定要手动关闭连接,这里,我写了一个关闭连接的方法,这个方法要写在我们的数据库连接类下。(关于Javaweb的数据库连接,大家可以看我的上一篇文章,使用数据库连接池)

 方法中没有用到的参数可以传null

 //方法中没有用到的参数可以传null
 public static void close(ResultSet rs,PreparedStatement ps,Connection con) {
	if (rs!=null) {
		try {
			rs.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	if (ps!=null) {
		try {
			ps.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	if (con!=null) {
		try {
			con.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
}

举例

三步解决Tomcat假死状态

三步解决Tomcat假死状态