首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > 高性能WEB开发 >

请教tomcat一段时间就死机是什么情况

2012-03-15 
请问tomcat一段时间就死机是什么情况?和数据库的链接有关系吗?bean iddataSource classorg.apache.c

请问tomcat一段时间就死机是什么情况?
和数据库的链接有关系吗?

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="initialSize" value="200" />
<property name="maxActive" value="1608" />
<property name="maxIdle" value="200" />
<property name="minIdle" value="0" />
<property name="maxWait" value="300000" />
<property name="numTestsPerEvictionRun" value="3" />
<property name="testOnBorrow" value="true" />
<property name="testOnReturn" value="false" />
<property name="testWhileIdle" value="false" />
<property name="validationQuery" value="select 1 from DUAL" />
<property name="defaultAutoCommit" value="false" />
<property name="defaultReadOnly" value="false" />
<property name="poolPreparedStatements" value="false" />
<property name="maxOpenPreparedStatements" value="0" />
<property name="minEvictableIdleTimeMillis" value="1800000" />
<property name="timeBetweenEvictionRunsMillis" value="900000" />
</bean>

[解决办法]
有错误日志没有?
[解决办法]
内存泄露了
[解决办法]
java.lang.OutOfMemoryError: PermGen space
内存溢出。。。

解决方法也一定是加大内存。
如果你的WEB APP下都用了大量的第三方jar, 其大小 超过了jvm默认的大小(4M)那么就会产生此错误信息了。 

[解决办法]
把你的jar包放在tomcat的lib里面,或者改jvm的内存
[解决办法]
写一个批处理,来启动tomcat

@echo off

set JAVA_HOME=D:\Program Files\Java\jdk1.6.0_20
set PATH=%JAVA_HOME%\bin
set CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
set JAVA_OPTS=-Xms256m -Xmx512m -Duser.timezone=GMT+08 -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n -Dcom.sun.management.jmxremote

C:
CD C:\Program Files\apache-tomcat-6.0.20\bin
startup.bat
[解决办法]
试试看吧
[解决办法]
修改 tomcat\bin\Catalina.bat 文件
在166行左右
rem Execute Java with the applicable properties ”以下每行
%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%

在 %DEBUG_OPTS% 后面添加-Xms256m -Xmx512m

保存后,重新以命令行的方式运行 tomcat ,即可,然后通过最后面介绍的如何观察tomcat现有内存情况的方法进行查看是否已经变更成功。

[解决办法]
java.lang.OutOfMemoryError: PermGen space 

PermGen 是存放加载的class的空间。 这个调Xmx Xms没用, 你需要适当的调一下这个参数:


-XX:PermSize=256MB -XX:MaxPermSize=256MB
[解决办法]
内存溢出了
[解决办法]
系统常量较多 持久代 内存不足



将 -XX:MaxPermSize=n: 这参数调大 即可
[解决办法]
数据库连接的配置非常不好,虽然和OutOfMemoryError没关系。

热点排行