Java 各种运行内存问题解决
来源:互联网 发布:软件开发控制程序 编辑:程序博客网 时间:2024/04/29 03:46
http://www.wallcopper.com/os/319.html
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded问题的解决办法.
一、异常如下:
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
二、产生原因:
意味着太多的时间花在了垃圾收集上面,SUN的建议是指定垃圾回收的算法,加上启动参数-XX:-UseGCOverheadLimit,从而限制JVM在抛出OutOfMemoryError之前限制其耗费在GC上的时间。
SUN的原文:
The parallel / concurrent collector will throw an OutOfMemoryError if too much time is being spent in garbage collection: if more than 98% of the total time is spent in garbage collection and less than 2% of the heap is recovered, an OutOfMemoryError will be thrown. This feature is designed to prevent applications from running for an extended period of time while *** little or no progress because the heap is too small. If necessary, this feature can be disabled by adding the option -XX:-UseGCOverheadLimit to the command line.
jvm gc行动中跨越98%以上的时间去释放小于2%的堆空间时会报这个错误。
JDK6新增错误类型。当GC为释放很小空间占用大量时间时抛出。
一般是因为堆太小。导致异常的原因:没有足够的内存。
三、解决方案:
1、查看系统是否有使用大内存的代码或死循环。
2、可以添加JVM的启动参数来限制使用内存:-XX:-UseGCOverheadLimit
3、在bin/catalina.sh增大Xms和Xmx:
JAVA_OPTS=”"-Xms512m -Xmx4096m -XX:MaxPermSize=128m -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC”"
-Xms512m 初始的java内存堆大小 256M
-Xmx4096m 最大的java内存堆大小 2048M
-XX:PermSize=128m GC预留的内存,假如你的应用有大量的Class被动态载进或卸载,你应该不这个参数设大些
-XX:MaxPermSize=256m 最大的GC预留内存
-Dsun.rmi.dgc.client.gcInterval=3600000 RMI客户端GC发生周期的设定
-Dsun.rmi.dgc.server.gcInterval=3600000 RMI服务端GC发生周期的设定
四、java命令
1、jps 类似UNIX的ps命令
2、jstat 用于输出给定java进程的统计信息。
3、jmap JAVA Memory Map
4、jconsole Java Monitoring and Management Console
- Java 各种运行内存问题解决
- uboot下载到内存运行问题解决
- myeclipse----JVM运行内存溢出问题解决
- MyEclipse运行项目的内存溢出问题解决方案:Java.lang.OutOfMemoryError: PermGen space
- Java运行外部程序问题解决
- java内存溢出问题解决办法
- Java内存泄漏与问题解决
- Java运行内存分析
- Java运行内存分析
- java 运行内存剖析
- java运行内存结构
- java运行内存分配
- JAVA修改运行内存
- WIN7 程序运行和管理员相关的各种问题解决方式
- Tensorflow运行github上Faste-rcnn各种问题解决方法
- 各种问题解决
- 运行DNW出现访问内存违例的问题解决
- MyEclipse运行项目的内存溢出问题解决方案
- 多语言本地化
- 第一篇 微信商城 开发前的准备工作
- node性能提升,有关Cluset模块
- DMA读写
- 自定义xcode5.0模板
- Java 各种运行内存问题解决
- SQL语句之alter database/system/session
- [黑马程序员]第十四篇:银行业务调度系统
- 19、设计模式
- j2ee && jsp 基础配置
- U盘文件被损坏如何才能恢复
- AutoBot智能迹录仪:给汽车用的智能穿戴设备
- 详解C语言字节对齐
- windows7 C盘清理(图解)