文章分类 - jvm
摘要:背景 线上有个流量比较大的服务,qps日常在2000-3000之间,请求方对耗时要求比较高,响应时间要求在300ms以内,服务上线以后,运行也比较平稳。某天夜里,突然有几千个dubbo请求超时,找了几个请求查看调用链路发现超时的地方各不相同,服务依赖的接口方均表示服务没有异常。 这种情况下,一般就是
阅读全文
摘要:简要工作中负责的有一个项目是使用iReport+JasperReport实现的一个打印系统。最近这个线上程序经常无响应,重启后恢复正常,但是时不时还是会出现类似的问题。最后发现是JasperReport的一个问题。有个JasperReport的转换任务内存占用特别高,当新对象需要分配内存时就会内存不
阅读全文
摘要:在线故障排查 转自:https://mp.weixin.qq.com/s/IGRVRhLFZOQL1mRucXCGxA
阅读全文
摘要:首先简单说下先偏向锁、轻量级锁、重量级锁三者各自的应用场景: 偏向锁:只有一个线程进入临界区; 轻量级锁:多个线程交替进入临界区; 重量级锁:多个线程同时进入临界区。 锁膨胀过程: 上图跟下面这个解析基本相同: 偏向所锁,轻量级锁都是乐观锁,重量级锁是悲观锁。一个对象刚开始实例化的时候,没有任何线程
阅读全文
摘要:以下主要为重写loadClass()和使用线程上下文类加载器这两种打破双亲委派模型方法的总结,并结合具体实例进行分析。 参考:破坏双亲委派模型 什么地方违反了双亲委派模型 以JDBC为例谈双亲委派模型的破坏 本文转载自:https://blog.csdn.net/cy973071263/articl
阅读全文
摘要:1、背景: 1)当Tomcat中部署的两个WEB应用,都有相同的包路径以及类名称,但是业务实现不同。安装JVM的双亲委派机制,可能存在互相覆盖的情况; 所以为了解决以上问题,tomcat提供WebAPP ClassLoader : 加载各自应用下的WEB-INF/class WEB-INF/lib
阅读全文
摘要:为什么要自定义类加载器 类加载机制:http://www.cnblogs.com/xrq730/p/4844915.html 类加载器:http://www.cnblogs.com/xrq730/p/4845144.html 这两篇文章已经详细讲解了类加载机制和类加载器,还剩最后一个问题没有讲解,就
阅读全文
摘要:在学习Java的过程中,很多喜欢说new出来的对象分配一定在对上; 其实不能这么说,只能说大部分对象分配是在对上。通过对象的分配过 程分析,除了堆以外,还有两个地方可以存放对象: 栈和TLAB(Thread Local Allocation Buffer)。 Java对象分配流程图: 如果开启栈上分
阅读全文
摘要:第一步:jps得到进程ID 第二步:找出该进程内最耗费CPU的线程,可以使用ps -Lfp pid或者ps -mp pid -o THREAD, tid, time或者top -Hp pid,我这里用第三个,输出如下:(windows使用ProcessExplorer找到进程id,右键propert
阅读全文
摘要:本文转载自: https://www.cnblogs.com/chinawjb/p/5339172.html 最近在读《深入理解Java虚拟机》,对Java对象的内存布局有了进一步的认识,于是脑子里自然而然就有一个很普通的问题,就是一个Java对象到底占用多大内存? 在网上搜到了一篇博客讲的非常好:
阅读全文
摘要:本文转载自: http://www.51testing.com/html/38/n-3724238.html 前言 现实企业级Java项目中,有时候会碰到下面这些问题: ●OutOfMemoryError,内存不足 ●内存泄露 ●线程死锁 ●锁争用(Lock Contention) ●Java进程消
阅读全文
摘要:Yes, it is as you guessed. The JVM/JRE uses Java bytecode as its instruction set and each JVM needs to be compiled on and be runnable on the native/lo
阅读全文
摘要:本文转载自:https://www.jianshu.com/p/353c26c744df 基本概念 定义 双亲委派模型要求除了顶层的启动类加载器外,其余的类加载器都应当有自己的父类加载器。 双亲委派模型的工作过程是: 如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求
阅读全文

浙公网安备 33010602011771号