Tomcat 内存溢出 服务器运行一段时间后就报这个java.heap.space 服务器上运行的是个网站 JSF写的网站..只能重新启动TOMCAT 才行...谁遇到过相似的问题? 帮忙分析分析 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可能是你的某个程序运行时一次执行大容量的数据,而这些数据一次性被写到了内存。比如从数据库中读取10w条记录,或者上传了一个几十M大小的文件,这个时候往往会导致内存溢出。解决:一、增加JVM堆设置JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置。在JVM中如果Heap size 不足2%的时候将抛出此异常信息。JVM在启动的时候会自动设置Heap size的值,Heap Size 最大不要超过可用物理内存的80%。参数:-Xms64M -Xmx256M tomcat catalina.bat 中: set JAVA_OPTS=%JAVA_OPTS% -Xms256M -Xmx800M -XX:MaxPermSize=256M 实际数值根据的机器内存性能配置二、程序优化1、检测你的代码中是否存在一次性从数据库中读取10w条记录,优化数据的读取,如分批分页读2、如果有上传文件功能,则控制文件的大小。 求一个简单程序功能 LinkedHashMap如何取到第n个元素? 关于这句SQL语句的错误 问个白痴问题 到底怎样才可以算熟悉JAVA 关于这个JAVA问题,急急急 内存溢出问题,调整JVM后不好使 请问Socket出错的问题。 scjp考题一道!!!!!!!! 关于java swing combobox 下拉框被遮盖的问题 ?????由字符串得到数组下标的问题?急急急急急急急急急急急急急急急急急急????? SERVLET在数据库中处理的结果,怎样在传给JSP?
比如从数据库中读取10w条记录,或者上传了一个几十M大小的文件,这个时候往往会导致内存溢出。解决:
一、增加JVM堆设置JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置。在JVM中如果Heap size 不足2%的时候将抛出此异常信息。JVM在启动的时候会自动设置Heap size的值,Heap Size 最大不要超过可用物理内存的80%。参数:-Xms64M -Xmx256M tomcat
catalina.bat
中: set JAVA_OPTS=%JAVA_OPTS% -Xms256M -Xmx800M -XX:MaxPermSize=256M
实际数值根据的机器内存性能配置
二、程序优化
1、检测你的代码中是否存在一次性从数据库中读取10w条记录,优化数据的读取,如分批分页读
2、如果有上传文件功能,则控制文件的大小。