was内存溢出:native memory exhausted(本地溢出)
来源:互联网 发布:淘宝 发送会员卡 编辑:程序博客网 时间:2024/05/17 08:06
一、java.lang.OutOfMemoryError: native memory exhausted
Java 虚拟机初始堆大小和最大堆大小不能盲目设置
以前碰到不少做J2EE应用的同事。 他们在碰到WAS跑起来很慢的时候,就会考虑到WAS的内存不够用。从而在增加内存后,盲目设置WAS的Java虚拟机初始堆大小和最大堆大小。
以前我见过的一个烟草的项目就是这样。
服务器有8G的内存 , 然后就把WAS的内存堆大小设置到4G。
结果导致应用跑起来的时候,就跟发羊癫风似的。
什么叫发羊癫风呢?
就是一会跑的很快, 跑着跑着就白屏了。 等上个1分钟后,又可以跑的很快。
这种情况出现的原因就是WAS的内存堆大小设置过大。 从而导致Java虚拟机做内存回收工作的时候,耗费时间过多。 这样就会让用户在访问应用的时候会出现白屏的情况。
一般情况下。 一个JVM的内存堆大小,最大不要超过1024M, 再大就得不偿失了。
后来的解决的方法就是在一个服务器上作多个WAS服务的集群,每个服务内存设置1G。这样跑起来就不会出现白屏了。
可以:初始堆:256M,最大堆:512M
可以:初始堆:1024M,最大堆:2048M
不行:初始堆:2048M,最大堆:4096M
具体根据机器性能决定,无需设置太大,设置过大会会报:
java.lang.OutOfMemoryError: native memory exhausted
并且was下会产生下列文件:
heapdump.20151228.150706.32210.0001.phd
javacore.20151228.150706.32210.0002.txt
Snap.20151228.150706.32210.0003.trc
具体配置点见截图:
- was内存溢出:native memory exhausted(本地溢出)
- 内存溢出:native溢出 和 上层溢出
- php内存溢出,出现Allowed memory size of 8388608 bytes exhausted错误的解决办法
- out memory 内存溢出总结
- out memory 内存溢出总结
- Maven GC memory 内存溢出
- Java JVM:内存溢出(栈溢出,堆溢出,持久代溢出以及 nable to create native thread)
- Java JVM:内存溢出(栈溢出,堆溢出,持久代溢出以及 nable to create native thread),
- Java JVM:内存溢出(栈溢出,堆溢出,持久代溢出以及 nable to create native thread)
- Java JVM:内存溢出(栈溢出,堆溢出,持久代溢出以及 nable to create native thread)
- WAS 内存溢出(OutofMemory)问题分析常用方法
- android内存溢出问题(out of memory)
- Android内存溢出(Out Of Memory)…
- Android 图片内存溢出(Out of Memory)
- Android避免内存溢出(Out of Memory)方法总结
- Android避免内存溢出(Out of Memory)方法总结
- Android避免内存溢出(Out of Memory)方法总结
- Android避免内存溢出(Out of Memory)方法总结
- 仿product hunt 头像收起展开的效果
- SQLServer使用sql语句复制数据库
- c语言学习(3)
- H264学习_基本数据结构
- 【高斯消元】BZOJ 1013: [JSOI2008]球形空间产生器sphere
- was内存溢出:native memory exhausted(本地溢出)
- [Yii2.0 TimestampBehavior]
- java用一行代码初始化ArrayList
- 《C++Primer 5e》学习笔记(4):语句
- phpstorm常用快捷键3
- 收集整理比较全 shell sed 命令与实例教程
- mybatis查询数据库返回结果为空
- HDOJ 2095-find your present (2)
- [android项目]开发过程中需要时刻注意的