java内存溢出的原因

来源:互联网 发布:软件项目经理工作流程 编辑:程序博客网 时间:2024/04/27 13:57
原因有很多种,比如:数据量过于庞大; 死循环 ;...静态变量和静态方法过多;递归;无法确定是否被引用的对象; java虚拟机不回收内存(内存泄漏);循环产生过多重复的对象实体,等等。。。说白了就是程序运行要用到的内存大于虚拟机能提供的最大内存就发生内存溢出了。 内存溢出的问题要看业务和系统大小而定,对于某些系统可能内存溢出不常见,但某些系统还是很常见的 解决的方法,一个是优化程序代码,如果业务庞大,逻辑复杂,这个方法有限 方法二就是物理解决,增大物理内存,然后通过java   -Xms   yyy   -Xmx   zzz启动程序.