严重: Servlet.service() for servlet jsp threw exception java.lang.OutOfMemoryError: Java heap space at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:114) at java.io.OutputStreamWriter.write(OutputStreamWriter.java:203) at org.apache.tomcat.util.buf.C2BConverter.convert(C2BConverter.java:87) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:457) at org.apache.catalina.connector.CoyoteWriter.write(CoyoteWriter.java:162) at org.apache.catalina.connector.CoyoteWriter.write(CoyoteWriter.java:171) at org.phprpc.PHPRPC_Server.sendCallback(PHPRPC_Server.java:252) at org.phprpc.PHPRPC_Server.sendError(PHPRPC_Server.java:282) at org.phprpc.PHPRPC_Server.start(PHPRPC_Server.java:697) at org.apache.jsp.emp_jsp._jspService(emp_jsp.java:61) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445) at java.lang.Thread.run(Thread.java:619)
网上都在说修改 tomcat的文件。数据量大了,在改也没有用呀。。
有什么好的办法吗??????
如果你开的内存都到极限了,你还是仔细检查下你的程序吧,推荐使用JProfiler,如果你确定你的程序没问题,那只有最后一步就是升级硬件,不过一般都是程序的问题,所以先检查程序,看那个模块出现问题!
在一太内存大的机器上跑
之后将tomcat的内存设大点
windows 更改系统环境变量
加上JAVA_OPTS=-Xms64m -Xmx512m
Linux 在{tomcat_home}/bin/catalina.sh的前面,加
set JAVA_OPTS='-Xms64 -Xmx512'
试试看
按楼上的方法就可以,
windows也是改那个catalina.bat文件,搜一下JAVA_OPTS,加在它下一行就好了
要是安装版的tomcat,是没有catalina.bat文件的,要在那个控制程序里设置