Stella981 Stella981
3年前
JVM调优实战:G1中的to
最近刚刚将自己的一个应用从CMS升级到G1,在一天早上,刚刚到办公室坐下,就收到手机一阵报警,去查看了监控,发现机器的内存出现了一个90度的涨幅,如下图所示:!image.png(https://oscimg.oschina.net/oscnet/ae6bebe36fe95ba28b8ee7c4ac673c52a81.png)在查看GC日志后,发
Wesley13 Wesley13
3年前
Java9之后的模块化烦恼解决(由RocketMQ升级OpenJDK11想到的)
本文基于OpenJDK11最近从OpenJDK8升级到了OpenJDK11,系统业务MQ用的RocketMQ,升级RocketMQ过程中,在已修改好JVM参数的情况下(参考我另一篇文章),遇到如下异常:java.lang.IllegalStateException:java.lang.reflect.InaccessibleObject
Stella981 Stella981
3年前
JVM故障分析及性能优化实战(VI)——JVM Heap Dump(堆转储文件)的生成和MAT的使用
前面的文章详细讲述了分析ThreadDump文件(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzA5MDE0ODQ1NQ%3D%3D%26mid%3D2648395657%26idx%3D1%26sn%3D61ac5c8
Wesley13 Wesley13
3年前
Java诊断利器Arthas优雅排查生产环境
!arthas(https://oscimg.oschina.net/oscnet/23f68778f266584b7d4bf30e95a49012825.jpg)前言Arthas是Alibaba开源的Java诊断工具。在线排查问题,无需重启;动态跟踪Java代码;实时监控JVM状态。对分秒必争的线上异常,Arthas可帮助我
Stella981 Stella981
3年前
24个Jvm面试题总结及答案
1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新
Wesley13 Wesley13
3年前
04 JVM是如何执行方法调用的(上)
重载和重写重载:同一个类中定义名字相同的方法,但是参数类型或者参数个数必须不同。重载的方法在编译过程中就可完成识别。具体到每一个方法的调用,Java编译器会根据所传入参数的生命类型来选取重载方法。选取的过程分以下三个阶段:1:在不考虑对基本类型自动装拆箱,以及可变长参数的情况下选取重载方法。2:如果第1个阶段未找到,那么在允许自动
十月飞翔 十月飞翔
3年前
9种 OOM 常见原因及解决方案
当JVM内存严重不足时,就会抛出java.lang.OutOfMemoryError错误。本文总结了常见的OOM原因及其解决方法,如下图所示。如有遗漏或错误,欢迎补充指正。1、Javaheapspace当堆内存(HeapSpace)没有足够空间存放新创建的对象时,就会抛出java.lang.OutOfMemoryError:Javahea
小万哥 小万哥
1年前
Java基础知识:面试官必问的问题
数据类型基本类型byte/8char/16short/16int/32float/32long/64double/64boolean/boolean只有两个值:true、false,可以使用1bit来存储,但是具体大小没有明确规定。JVM会在编译时期将bo
Tomcat目录结构 | 京东云技术团队
Tomcat目录结构图如下:1、bin目录存放一些可执行的二进制文件,.sh结尾的为linux下执行命令,.bat结尾的为windows下执行命令。:真正启动tomcat文件,可以在里面设置jvm参数。:启动tomcat(需事先配置好JAVAHOME环境变