性能调优
qqchaozai
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【性能调优】JNI内存溢出案例(String对象溢出)
前言场景:C++通过JNI将数据传输给Java程序问题:运行一段时间String对象和Char字符不停变大,直到内存溢出(JVM-OOM)1 过程Jmap初步分析头部对象内存占用PS:jmap -histo:live <pid>,执行该方法会同步执行一次GC,所以,展示的都是无法GC的对象。发现:String对象有28万个,可能存在String对象被长期持有的...原创 2020-01-19 19:20:37 · 926 阅读 · 0 评论 -
【性能调优】CPU
在Linux中,CPU主要用于中断、内核以及用户进程的任务处理。1 基础概念上下文切换每个CPU在同一时间只能执行一个线程(超线程除外),Linux采用的是抢占式调度,即CPU会给每个线程分配一定的CPU执行时间,当到达执行时间、线程中有IO阻塞或高优先级线程要执行时,Linux将切换执行的线程。场景:文件IO、网络IO、锁等待或线程Sleep时,当前线程会进入阻塞或者休眠,从而触发...原创 2019-05-21 17:51:28 · 270 阅读 · 0 评论 -
【性能调优】CPU问题案例
案例一1 现象16核CPU,占了70%+2 排查查看线程占用:定位到17836-17848这13个线程占用最高,平均占用%21确定16进制进程号:使用jstack导出发现无响应:结果程序崩溃,日志中导出堆栈日志,发现这13个线程全部都是GC任务线程:还发现:大量线程处于阻塞状态,且大量线程阻塞在jetty请求任务队列java.lang.Th...原创 2019-08-01 15:15:05 · 429 阅读 · 0 评论
分享