我在服务器上只是用Tcomcat跑一些网站,
当网站达到一定访问量时,或者直接对网站有些动态的写入东西的时候
会出现这个错误:
Caused by: java.lang.OutOfMemoryError
网站就会挂掉,必须重新启动Tcomcat才能在WWW上访问这些网站。以前用IIS和Tcomcat整和到一起时来运行这些项目,不会出现这个问题。
请高手指点这什么问题造成的啊?????
解决给分!!!

解决方案 »

  1.   

    java.lang.OutOfMemoryError
    这个是缓冲区溢出的错误
      

  2.   


    发表文章: 2
    注册时间: 2004-01 紧急求助Tomcat问题!!!  发表时间: Jan 12, 2004 4:24 PM 
    回复此消息  回复
    在Server.xml中,如果设置maxProcessors的值太大(为200),则服务器运行一段时间后,Tomcat界面上会出现 java.lang.OutOfMemoryError”,但如果设置maxProcessors的值太小(为50),则Tomcat界面上会出现 “All threads are busy, waiting. Please increase maxThreads or check the servlet status50 50”的提示信息,不知道哪位高手知道解决办法,这里谢谢先!oldma发表文章: 86
    注册时间: 2003-09 Re: 紧急求助Tomcat问题!!!  发表时间: Jan 16, 2004 1:34 PM 
    回复此消息  回复
    修改虚拟机参数
    java -Xms512m -Xmx512m
    这下应该够用了吧!要确定两件事
    1。虚拟机内存大了不是好事,如果你用不了那么多,垃圾回收的时间是很长的,系统反而会变慢。
    2。如果应用程序有内存泄漏,改成1G用户量上去了也会outofmemory__________________
    sigh,头像为什么不能上传cool007发表文章: 1
    注册时间: 2004-02 Re: 紧急求助Tomcat问题!!!  发表时间: Feb 4, 2004 11:49 AM 
    回复此消息  回复
    楼上的大哥,我也碰到楼主所说的情况,但是,我不知道,java -Xms512m -Xmx512m
    是什么意思,能给我解释一下吗?谢谢oldma发表文章: 86
    注册时间: 2003-09 Re: 紧急求助Tomcat问题!!!  发表时间: Feb 4, 2004 1:06 PM 
    回复此消息  回复
    -Xms java分配内存最小限制(下限)
    -Xmx java分配内存最大限制(上限)
    不指定的话应该是 16m 16m
    上面的用词可能不太严谨,基本意思差不多,呵呵__________________
    sigh,头像为什么不能上传salajon发表文章: 12
    注册时间: 2003-03 Re: 紧急求助Tomcat问题!!!  发表时间: Feb 26, 2004 9:43 AM 
    回复此消息  回复
    如果我的环境是TOMCAT3.2.3+LINUX7.0的话,应该在哪里修改?
    我看到你在某帖子上的环境应该是TOMCAT4以上的版本吧是不是在/etc/profile 加上 export ?salajon发表文章: 12
    注册时间: 2003-03 Re: 紧急求助Tomcat问题!!!  发表时间: Feb 27, 2004 9:44 AM 
    回复此消息  回复
    还有个问题,如果在环境中设置好了变量:
    JAVA_OPTS=-Xms128m -Xmx128m
    export JAVA_OPTS我是在/etc/profile里加入的,我想知道如何才能确定这个参数设置有效?我做个测试,用了:
    out.println("total memory is: " + java.lang.Runtime.getRuntime().totalMemory() / 1024 );out.println("free memory is:" + java.lang.Runtime.getRuntime().freeMemory() / 1024 );我设了值是128M,但是我看页面显示“total memory is: 13396 free memory is:9638 ”,也才13M左右,所以不是很确定参数是否有效?salajon发表文章: 12
    注册时间: 2003-03 Re: 紧急求助Tomcat问题!!!  发表时间: Feb 27, 2004 3:06 PM 
    回复此消息  回复
    我JDK的版本是1.3.1_04JAVA_OPTS=-Xms128m -Xmx128m
    export JAVA_OPTS当我登陆LINUX时,报错误提示:
    bash: -Xmx128m: command not found于是我改成:
    JAVA_OPTS=-Xms128m
    export JAVA_OPTS这样重新登陆时,没有错误提示,但是用上面的方法测试,却又觉得没什么效果?
    有知道原因的吗?请赐教。。banq
    发表文章: 6461
    来  自: 上海
    注册时间: 2002-08 Re: 紧急求助Tomcat问题!!!  发表时间: Feb 28, 2004 12:33 PM 
    回复此消息  回复
    /etc/profile有效的。使用ps -ax 可以看到是否有效,需要你对linux熟悉。__________________
    Java学习开发三件宝: Domain Model(域建模)、Patterns(模式)和Framework(框架)。
    集三宝理念于一身,小中型J2EE项目快速开发工具:Jdon Frameworksalajon发表文章: 12
    注册时间: 2003-03 Re: 紧急求助Tomcat问题!!!  发表时间: Mar 1, 2004 2:01 PM 
    回复此消息  回复
    有谁做过与我类似的测试,但得到与我相反结果的,请赐教,谢谢了。。不好意思,我对LINUX确实不是很熟,我查了下资料,使用方式:ps [options] [--help]
    说明:显示瞬间行程 (process) 的动态
    参数:
    ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
    -A 列出所有的行程
    -w 显示加宽可以显示较多的资讯
    -au 显示较详细的资讯
    -aux 显示所有包含其他使用者的行程然后运行,BANQ说的ps -ax ,觉得结果好象都是当前的进程,不知道如何才知道这个参数设置完是否有效?因为我没有从结果中看到关于JVM的信息,请帮忙,谢谢了salajon发表文章: 12
    注册时间: 2003-03 Re: 紧急求助Tomcat问题!!!  发表时间: Mar 1, 2004 2:29 PM 
    回复此消息  回复
    我后来用env看了下环境变量,里面有:
    JAVA_OPTS=-Xms128m
    但是能根据这个就判断JVM参数有效吗?还有我后来发现了我原来:
    当我登陆LINUX时,报错误提示:
    bash: -Xmx128m: command not found这个地方错误的原因了,应该是:JAVA_OPTS=-Xms128m-Xmx128m
    export JAVA_OPTS这里不能有空格,加了空格可能是认为第二条命令。。此时用env查看环境变量,可以观察到:
    JAVA_OPTS=-Xms128m-Xmx128m疑问类似与上面。根据JDK的文挡:
    totalMemorypublic long totalMemory()Returns the total amount of memory in the Java Virtual Machine. The value returned by this method may vary over time, depending on the host environment.
    Note that the amount of memory required to hold an object of any given type may be implementation-dependent.Returns:
    the total amount of memory currently available for current and future objects, measured in bytes.但是我运行:out.println("total memory is: " + java.lang.Runtime.getRuntime().totalMemory() / 1024 );
    的结果确是
    total memory is: 22400 或12400总是得不到理想的数字,所以我不能很确定通过我上面的方法是否已经有效的设置了JVM参数?irrdx发表文章: 1
    注册时间: 2004-04 Re: 紧急求助Tomcat问题!!!  发表时间: Apr 1, 2004 12:29 PM 
    回复此消息  回复
    我在tomcat的catalina.sh里设CATALINA_OPTS="$CATALINA_OPTS -Xms512m -Xmx512m",这下行了!lzfounder发表文章: 1
    注册时间: 2004-04 Re: 紧急求助Tomcat问题!!!  发表时间: Apr 5, 2004 8:00 PM 
    回复此消息  回复
    各位老大!!
    比如:
    改写catalina.sh ,我不知道怎么改 在catalina.sh文件的哪个位置改。
    我是菜鸟阿谢谢指教
      

  3.   

    如果访问www.freebbs.org 会出现下面异常:
    2006-07-05 23:26:36 ErrorDispatcherValve[www.freebbs.org]: Remote Client Aborted Request, IOException: Connection reset by peer: socket write error
    2006-07-05 23:27:27 StandardWrapperValve[default]: Servlet.service() for servlet default threw exception
    ClientAbortException:  java.net.SocketException: Connection reset by peer: socket write error