![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM调优
琦彦
Find out who you are,and be that person.
展开
-
美团面试题:JVM堆内存溢出后,其他线程是否可继续工作?
最近网上出现一个美团面试题:“一个线程OOM后,其他线程还能运行吗?”我看网上出现了很多不靠谱的答案。这道题其实很有难度,涉及的知识点有jvm内存分配、作用域、gc等,不是简单的是与否的问题。由于题目中给出的OOM,java中OOM又分很多类型;比如:堆溢出(“java.lang.OutOfMemoryError: Java heap space”)、永久带溢出(“java.lang.OutOfMemoryError:Permgen space”)、不能创建线程(“java.lang.转载 2021-04-06 13:55:57 · 369 阅读 · 0 评论 -
如何合理的规划一次jvm性能调优
JVM性能调优涉及到方方面面的取舍,往往是牵一发而动全身,需要全盘考虑各方面的影响。但也有一些基础的理论和原则,理解这些理论并遵循这些原则会让你的性能调优任务将会更加轻松。为了更好的理解本篇所介绍的内容。你需要已经了解和遵循以下内容:1、已了解jvm 垃圾收集器2、已了解jvm 性能监控常用工具3、能够读懂gc日志4、确信不为了调优而调优,jvm调优不能解决一切性能问题...转载 2019-02-22 17:17:31 · 9941 阅读 · 0 评论 -
JProfiler10.1.3:远程Linux服务器Tomcat的JVM性能监控
JProfiler安装环境Centos Linux 7.4 tomcat 8.0、jdk1.8.0_181 jprofiler_linux_10_1_3.tar.gz jprofiler_windows-x64_10_1_3下载软件官网地址:http://www.ej-technologies.com/download/jprofiler/files ,一个lin...原创 2019-02-25 11:49:20 · 9737 阅读 · 0 评论 -
JProfiler10: 功能介绍
摘要: 性能诊断是软件工程师在日常工作中需要经常面对和解决的问题,在用户体验至上的今天,解决好应用的性能问题能带来非常大的收益。Java 作为最流行的编程语言之一,其应用性能诊断一直受到业界广泛关注。可能造成 Java 应用出现性能问题的因素非常多,例如线程控制、磁盘读写、数据库访问、网络I/O、垃圾收集等。背景性能诊断是软件工程师在日常工作中需要经常面对和解决的问题,在用户体验至上的今天...转载 2019-02-25 15:40:13 · 2385 阅读 · 0 评论 -
jvm优化—监控工具:诊断内存泄露、cpu飙升、线程死锁、响应变慢
在常见的线上问题时候,我们多数会遇到以下问题:内存泄露 某个进程突然cpu飙升 线程死锁 响应变慢...等等其他问题。如果遇到了以上这种问题,在线下可以有各种本地工具支持查看,但到线上了,就没有这么多的本地调试工具支持,我们该如何基于监控工具来进行定位问题?我们一般会基于数据收集来定位,而数据的收集离不开监控工具的处理,比如:运行日志、异常堆栈、GC日志、线程快照、堆快照等。...转载 2019-02-25 18:08:05 · 5079 阅读 · 0 评论 -
jstat -gcutil 命令使用
命令格式jstat -gcutil pid interval(ms)举例:jstat -gcutil 16361 1000线上服务器的GC情况如下:参数说明如下:S0: 新生代中Survivor space 0区已使用空间的百分比 S1: 新生代中Survivor space 1区已使用空间的百分比 E: 新生代已使用空间的百分比 O: 老年代已使用空...原创 2019-02-25 18:15:45 · 34180 阅读 · 0 评论 -
JVM 发生 OOM 的 8 种原因、及解决办法
1. Java 堆空间发生频率:5颗星造成原因无法在 Java 堆中分配对象 吞吐量增加 应用程序无意中保存了对象引用,对象无法被 GC 回收 应用程序过度使用 finalizer。finalizer 对象不能被 GC 立刻回收。finalizer 由结束队列服务的守护线程调用,有时 finalizer 线程的处理能力无法跟上结束队列的增长解决方案使用 -Xmx 增加...转载 2019-05-13 19:10:16 · 7922 阅读 · 0 评论 -
Jvm 虚拟机篇
一、运行时数据区域程序计数器Java 虚拟机栈本地方法栈堆方法区运行时常量池直接内存二、垃圾收集判断一个对象是否可被回收引用类型垃圾收集算法垃圾收集器三、内存分配与回收策略Minor GC 和 Full GC内存分配策略Full GC 的触发条件四、类加载机制类的生命周期类加载过程类初始化时机类与类加载器类加载器分类双亲委派模型...转载 2019-07-01 09:06:46 · 480 阅读 · 0 评论