2019独角兽企业重金招聘Python工程师标准>>>

问题描述

线上右键告警,报错 OutOfMemoryError 拉取出日志,发现同样的问题:

2018-11-13 10:23:59,151 [] ERROR filter.ExceptionFilter - [DUBBO] Got unchecked and undeclared exception which called by 10.122.2.132. service: com.yuantu.virtual.service.UserAccountDubboService, method: getUserByCard, exception: java.lang.OutOfMemoryError: PermGen space, dubbo version: 2.5.3, current host: 10.122.2.109
java.lang.OutOfMemoryError: PermGen space
at sun.misc.Unsafe.defineClass(Native Method)
at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:63)
at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:399)
at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:396)
at java.security.AccessController.doPrivileged(Native Method)
at sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:395)
at sun.reflect.MethodAccessorGenerator.generateConstructor(MethodAccessorGenerator.java:94)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:48)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.reflect.Proxy.newInstance(Proxy.java:764)
at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:755)
at sun.reflect.annotation.AnnotationParser.annotationForMap(AnnotationParser.java:300)
at sun.reflect.annotation.AnnotationParser.parseAnnotation2(AnnotationParser.java:290)
at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:223)
at sun.reflect.annotation.AnnotationParser.parseParameterAnnotations2(AnnotationParser.java:181)
at sun.reflect.annotation.AnnotationParser.parseParameterAnnotations(AnnotationParser.java:158)
at java.lang.reflect.Method.getParameterAnnotations(Method.java:772)
at org.apache.ibatis.binding.MapperMethod.getParamNameFromAnnotation(MapperMethod.java:229)
at org.apache.ibatis.binding.MapperMethod.setupMethodSignature(MapperMethod.java:221)
at org.apache.ibatis.binding.MapperMethod.(MapperMethod.java:70)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:39)
at com.sun.proxy.$Proxy101.getUserCardBySeqAndType(Unknown Source)
at com.yuantu.virtual.service.impl.UserCardServiceImpl.getUserCardBySeqAndType(UserCardServiceImpl.java:154)
at com.yuantu.virtual.service.impl.UserCardServiceImpl$$FastClassByCGLIB$$a6794f1f.invoke()
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:698)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)
at com.yuantu.common.profiler.ProfilerApsect.invoke(ProfilerApsect.java:36)
at sun.reflect.GeneratedMethodAccessor168.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

排查

检查tomcat配置:

JAVA_OPTS="-server
-Xmx5000m -Xms5000m -Xmn1000m
-Xss1024k -XX:SurvivorRatio=20 -XX:MaxTenuringThreshold=3
-XX:TargetSurvivorRatio=50 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC
-XX:CMSInitiatingOccupancyFraction=75 -XX:+CMSClassUnloadingEnabled
-XX:+UseCMSInitiatingOccupancyOnly -XX:ParallelGCThreads=4 -XX:ConcGCThreads=4
-XX:+CMSParallelRemarkEnabled -XX:+CMSScavengeBeforeRemark
-XX:+ExplicitGCInvokesConcurrent -XX:+UseTLAB -XX:TLABSize=1024K
-Dsun.rmi.dgc.client.gcInterval=86400000 -Dsun.rmi.dgc.server.gcInterval=86400000
-Djava.awt.headless=true -Dclient.encoding.override=UTF-8
-Dfile.encoding=UTF-8 -Duser.language=zh -Duser.region=CN "

发现并没有设置自动Dump的参数

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/export/home/tomcat/domains/server2/oom.hprof

到zabbix上查看内存并没有明显波动;
分析日志,从java.lang.OutOfMemoryError: PermGen space可看出是永久代内存溢出; 检查发现并没有配置永久代大小;默认大小为64m;

解决

设置永久代大小配置:

-XX:PermSize=512m -XX:MaxPermSize=512m

转载于:https://my.oschina.net/mengzhang6/blog/2875419

记录一次java.lang.OutOfMemoryError: PermGen space异常相关推荐

  1. IntelliJ IDEA的Maven项目在修改时报java.lang.OutOfMemoryError: PermGen space异常

    IntelliJ IDEA的Maven项目在修改时报java.lang.OutOfMemoryError: PermGen space异常 参考文章: (1)IntelliJ IDEA的Maven项目 ...

  2. JRebel : java.lang.OutOfMemoryError: PermGen space 异常

    软件环境 开发工具:IDEA 2018.3 Tomcat:8.5.39 JDK:1.7.0_80 JReBel:2018.2.7 异常描述 使用Tomcat直接运行/调试可以,但是通过JReBel运行 ...

  3. Tomcat Caused by java lang OutOfMemoryError PermGen space

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 这个应该 ...

  4. caused by: java.lang.outofmemory_Caused by: java.lang.OutOfMemoryError: PermGen space

    异常: 项目中遇到了系统停止响应的问题,查看日志发现Tomcat报告Caused by: java.lang.OutOfMemoryError: PermGen space异常,开始以为是程序内存泄漏 ...

  5. myEclipse开发内存溢出解决办法myEclipse调整jvm内存大小java.lang.OutOfMemoryError: PermGen space及其解决方法...

    摘要: tomcat部署多个项目后,启动tomcat正常,访问项目时却会出现该错误 在网上查了查又试了好几次,才解决,将解决方法记录下来,以方便以后查看或让遇到同样问题的朋友有个参考 PermGen ...

  6. java.lang.OutOfMemoryError: PermGen space及其解决方法

    PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决 ...

  7. JAVA编译异常处理:java.lang.OutOfMemoryError: PermGen space

    JAVA编译异常处理:java.lang.OutOfMemoryError: PermGen space 参考文章: (1)JAVA编译异常处理:java.lang.OutOfMemoryError: ...

  8. Tomcat发布Maven项目遇到异常:java.lang.OutOfMemoryError: PermGen space

    前言: 本问题出现在tomcat 7发布 web3.0Maven项目的时候出现. 问题阐述: 异常:java.lang.OutOfMemoryError:PermGen space 解决如下: 1.  ...

  9. Weblogic java.lang.OutOfMemoryError: PermGen space

    错误信息 Error 500--Internal Server Error java.lang.OutOfMemoryError: PermGen space 解决 D:\SDE\weblogic\M ...

最新文章

  1. linux-glibc内存管理小结2(内存相关系统调用的实现)
  2. 模仿黑产破解12306验证码,验证码产品的未来是?
  3. 以DES的方式实现对称加密,并提供密钥
  4. html进度条实现方案,两种进度条实现方案的对比
  5. 比Postman更懂中国程序员,Apipost真香!
  6. 友商对于鸿蒙系统,谷歌新系统上线!鸿蒙面临生死线考验,华为喊话友商,被小米拒绝...
  7. hadoop集群配置文件
  8. php文件怎么加统计代码,php统计文件中的代码行数
  9. InnoDB存储引擎:锁
  10. 2019美赛M(一等/优异)奖,给想参加美赛的同学们的干货建议
  11. mysql 水晶报表_Crystal Reports 2008(水晶报表) JDBC连接mysql数据库
  12. mysql数据血缘分析,数仓字段血缘解析实现—hive版
  13. 电脑没有WiFi断网代码56解决方法CCleaner下载
  14. spring boot 多模块项目打包部署
  15. 在HTML中插入SVG的几种方式
  16. MongoDB全面总结
  17. 搜酷:紧跟淘宝步伐的大卖家
  18. JAVA生成短8位UUID
  19. 第一数字定律识别数据作假
  20. linux c邮件客户端,[源码和文档分享]基于C语言和TCP Socket实现的Linux环境下的邮件收发客户端程序...

热门文章

  1. maven 使用 问题记录
  2. NBU备份之一 Windows操作系统BMR的配置
  3. python求1到n的乘积_Python简单实现两个任意字符串乘积的方法示例
  4. ifs 报表开发手册_房地产开发资质要求《暂定资质证书》相关规定
  5. sublime3(anaconda) 无法自动补全第三方模块
  6. BZOJ 3732 Network
  7. 【分析总结】ASP.NET中的状态管理原理
  8. 换一个角度再谈一下WF
  9. 汽车电子及ADAS安全部分相关测试标准
  10. postman 以全局变量活用 Token