【Java-JVM】定量分析解决OutOfMemoryError: PermGen space, 来看科学量化分析
网络上搜集,有操作有分析。
一、问题
在部署大型的 Java Web项目的时候,或者在 MyEclipse 中进行调试的时候经常出现:
OutOfMemoryError: PermGen space
的错误。
二、监控运行时参数
我们经常是在尝试网上的各种方案之后,并且将各种参数手动调整来调整去,都没有作用,依然溢出。此时就需要找到配置后系统认可的内存参数是多少。参考网络上的知识,启动了JDK自带的工具,在\jdk1.6.0_10\bin下面的jconsole.exe内存监控的工具,点击选择PID为4472的这个进程(带有tomcat的进程)。
选择内存页,点击右下角的绿色柱子里的最后一个“内存池“Perm Gen”,相应的左边会显示它的详细信息。
【本博客的截图是修复后的参数大小】
三、设置步骤
1. 正确步骤分为2种情况。
1.1 使用MyEclipse和Tomcat搭配进行本地调试
使用MyEclipse调试程序的话,则需要在该软件内进行JDK参数设置。
设置步骤如下图:参数也可参考。JDK版本和Tomcat选择自己调试时用到的那个。
1.2 只使用Tomcat作为生产环境
只使用Tomcat,那肯定就只有在 Tomcat 的配置文件中进行设置了。
设置文件: (你的Tomcat安装路径)/bin/catalina.bat
修改位置:【rem ----- Execute The Requested Command - 】这行后面增加下面:
set JAVA_OPTS=%JAVA_OPTS% -Xms1024m -Xmx1024m -XX:PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=512m
最好set JAVA_OPTS=%JAVA_OPTS% 这个也要加上。
然后手工启动tomcat,然后看jconsole.exe,查看Perm Gen的内存可以看出配置是否生效。
【Java-JVM】定量分析解决OutOfMemoryError: PermGen space, 来看科学量化分析的更多相关文章
- myEclipse开发内存溢出解决办法myEclipse调整jvm内存大小java.lang.OutOfMemoryError: PermGen space及其解决方法
摘要: tomcat部署多个项目后,启动tomcat正常,访问项目时却会出现该错误在网上查了查又试了好几次,才解决,将解决方法记录下来,以方便以后查看或让遇到同样问题的朋友有个参考 PermGen s ...
- myEclipse开发内存溢出解决办法myEclipse调整jvm内存大小 java.lang.OutOfMemoryError: PermGen space及其解决方法
Window->Preferences->MyEclipse->Servers->Tomcat x.x->JDK->Optional Java VM argumen ...
- jvm看java.lang.OutOfMemoryError: PermGen space
异常现象 异常信息如下 java.lang.OutOfMemoryError: PermGen space at java.lang.ClassLoader.defineClass1(Native M ...
- java.lang.OutOfMemoryError: PermGen space及其解决方法
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决 ...
- [转]java.lang.OutOfMemoryError: PermGen space及其解决方法
原文地址:http://peak.iteye.com/blog/52606 这个问题是我的工程中加入了Birt报表在Linux环境下运行出现的问题,从网上搜索了一下看到这文章发现并不是由于Birt的原 ...
- Tomcat Xms Xmx PermSize MaxPermSize 区别 及 java.lang.OutOfMemoryError: PermGen space 解决
解决方案 在 catalina.bat 里的 蓝色代码前加入: 红色代码 rem ----- Execute The Requested Command ----------------------- ...
- java.lang.OutOfMemoryError: PermGen space及其解决方法(转载)
java.lang.OutOfMemoryError: PermGen space及其解决方法 分类: java2007-09-11 12:34 162242人阅读 评论(51) 收藏 举报 gene ...
- eclipse 运行报java.lang.OutOfMemoryError: PermGen space解决方法
一.在window下eclipse里面Server挂的是tomcat6,一开始还是以为,tomcat配置的问题,后面发现,配置了tomcat里面的catalina.bat文件,加入 set JAVA_ ...
- Tomcat内存溢出(java.lang.OutOfMemoryError: PermGen space)的解决办法
Tomcat启动时报如下错误: java.lang.OutOfMemoryError: PermGen space 解决办法: 配置相关内存大小.其中按照启动tomcat的不同方式,分如下三种情况 a ...
随机推荐
- PAT天梯赛L3-005 垃圾箱分布
题目链接:点击打开链接 大家倒垃圾的时候,都希望垃圾箱距离自己比较近,但是谁都不愿意守着垃圾箱住.所以垃圾箱的位置必须选在到所有居民点的最短距离最长的地方,同时还要保证每个居民点都在距离它一个不太远的 ...
- yum 缓存包到本地
yum install –downloadonly –downloaddir=/root/mypackages/ vim 说明: --downloadonly 只下载 --downloaddir 下载 ...
- HTTP header parsing errors will be logged at DEBUG level
-- ::-exec-] INFO org.apache.coyote.http11.Http11Processor - Error parsing HTTP request header Note: ...
- EIGRP-3-EIGRP的多参数度量
带宽度量参数本身无法区分10Gbit/s及更高速率的接口.对1Gbit/s接口,默认延迟度量参数已设置为最低值1(10微妙).而且EIGRP承载的是经过换算的参数,每台路由器需要将其换算回再计算新开销 ...
- P2675 《瞿葩的数字游戏》T3-三角圣地
传送门 考虑最上面每个位置的数对答案的贡献 然后就很容易发现: 如果有n层,位置 i 的数对答案的贡献就是C( n-1,i ) 然后就有很显然的贪心做法: 越大的数放越中间,这样它的贡献就会尽可能的大 ...
- spring学习(四)spring的jdbcTemplate(增删改查封装)
Spring的jdbcTemplate操作 1.Spring框架一站式框架 (1)针对javaee三层,每一层都有解决技术 (2)到dao 层,使用 jdbcTemplate 2.Spring对不同的 ...
- java编程如何实现从本地里读取文件1,写入到本地另一个文件2里(多种场景)
不多说,直接上干货! 有时候,我们需要用到这样的一个场景. ReadLocalFile1WriteLocalFile2.java (以下是相当于复制,读取文件1里的全部内容,并写入到文件2里) pac ...
- No lease on /目录: File does not exist. [Lease. Holder: DFSClient_NONMAPREDUCE_-2059237550_1, pendingcreates: 8]错误及解决方法
感觉程序员的世界真是一个变幻无常且精彩绝伦的世界,每次跑程序都会发现不一样的问题.今天跑MapReduce程序来统计邮箱次数时遇到了一个问题,明明一样的代码,别人能跑,我却跑不了.我相信,基本做这行的 ...
- 面试大全之JVM篇
JVM 内存模型以及分区,需要详细到每个区放什么. JVM 分为堆区和栈区,还有方法区,初始化的对象放在堆里面,引用放在栈里面,class类信息常量池(static常量和static变量)等放在方法区 ...
- Mybatis-Plus使用全解
前言 之前写了<SpringBoot | 第九章:Mybatis-plus的集成和使用>一文,只是简单的使用条件构造器列举了一些通用的CURD操作.本人也想写一篇通用的关于mybatis- ...