首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JVM调优
订阅
KLAN
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
深入理解Java虚拟机之性能监控与故障处理工具
前面几篇讲了关于JVM的理论知识,今天介绍几个JDK的命令行工具,来快速定位线上问题。 执行样例中3409是进程ID,5s是每隔五秒查询一次,2是一共查询两次。 S0C: Young Generation第一个survivor space的内存大小 (kB). S1C: You…
啃碎并发(四):Java线程Dump分析
Thread Dump是非常有用的诊断Java应用问题的工具。每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机打印的thread dump略有不同,但是 大多都提供了当前活动线程的快照,及JVM中所有Java线程的堆栈…
JVM-内存模型
Java并发是基于共享内存模型实现的。学习并深入地理解__Java内存模型__,有助于开发人员了解Java的线程间通信机制原理,从而实现安全且高效的多线程功能。 计算机在执行程序时,每条指令都是在__CPU__中执行的,而执行指令过程中,势必涉及到对主存中数据的读取和写入。由于…
《深入java虚拟机》读书笔记之垃圾收集器与内存分配策略
该读书笔记用于记录在学习《深入理解Java虚拟机——JVM高级特性与最佳实践》一书中的一些重要知识点,对其中的部分内容进行归纳,或者是对其中不明白的地方做一些注释。主要是方便之后进行复习。 在上一节中有提到在运行时数据区域包括:堆、虚拟机栈、本地方法栈、程序计数器、方法区(JD…
深入理解JVM——(一)JVM的内存区域划分
说到Java内存区域,可能很多人第一反应是“堆栈”。首先堆栈不是一个概念,而是两个概念,堆和栈是两块不同的内存区域,简单理解的话,堆是用来存放对象而栈是用来执行程序的。其次,堆内存和栈内存的这种划分方式比较粗糙,这种划分方式只能说明大多数程序员最关注的、与对象内存分配关系最…
一文探讨堆外内存的监控与回收
记得那是一个风和日丽的周末,太阳红彤彤,花儿五颜六色,96 年的普哥微信找到我,描述了一个诡异的线上问题:线上程序使用了 NIO FileChannel 的 堆内内存(HeapByteBuffer)作为缓冲区,读写文件,逻辑可以说相当简单,但根据监控,却发现堆外内存(Direc…
一文带你了解 JVM 的内存区域
一. 内存区域 1. 线程私有 2. 线程共享 二. 了解 Java 对象 1. 对象的创建 指针碰撞:使用这种方法,堆内存必须是规整的(用过的放一边,空闲的放一边),然后中间放一个指针作为分界点。分配内存时只需要将指针挪一段与对象大小相等的距离即可 空闲列表:如果堆内存不规整…
JVM(一)史上最佳入门指南
提到Java虚拟机(JVM),可能大部分人的第一印象是“难”,但当让我们真正走入“JVM世界”的时候,会发现其实问题并不像我们想象中的那么复杂。唯一真正令我们恐惧的,其实是恐惧本身。而作为整个JVM系列的首篇,本文将带你解除刚开始学习JVM时的种种疑惑。比如:什么是JVM?为什…
一文带你了解 JVM 的垃圾回收机制
一. 什么区域需要回收?为什么需要回收? 垃圾回收也称为 GC (Garbage Collection),或者可以称为垃圾收集。 而且对于栈来说,每个栈帧中分配多少内存基本在类结构确定下来的时候就已经确定了。 对于堆来说,如果不进行垃圾回收,内存迟早都会被消耗空,因为我们在不断…
JVM 原理与优化 (1)
如图所示,JVM包括类装载器子系统、运行时数据区、执行引擎。类装载器子系统根据给定的权限 的名来装入类型(类或者接口)。执行引擎负责执行那些包含在被装载类的方法中的指令。运行时 数据区包含方法区、堆、Java栈、PC寄存器、本地方法栈。 类装载器子系统:在JVM中负责查找并装载…