JVM 基础知识

JAVA code加载执行顺序:

*.java --->*.class->类装载子系统、字节码执行引擎

JVM虚拟机组成:

堆、方法区(元空间)、栈(线程)、本地方法栈、程序计数器

栈帧组成:

栈帧:局部变理表、操作数栈、动态链接、方法出口

对象组成:

对象头(Mark Word、KlassPointer类型指针、数组长度)、实例数据、对齐填充(8个字节)

分代收集:

堆分为新生代(复制算法)和老年代(标记-清除、标记-整理)

CMS:初始标记、并发标记、重新标记、并发清理、并发重置

G1:初始标记、并发标记、最终标记、筛选回收

Jstack:线程运行情况
Jstat:查看垃圾回收情况

  • 程序通过JStack
  • 数据库通过

1、查询是否锁表

SHOW OPEN TABLES WHERE in_use>0;

2、查询进程

SHOW PROCESSLIST;

3、查询正在锁的事务

SELECT * FROM information_schema.`INNODB_LOCKS`;

4、查询等待锁的事务

SELECT * FROM information_schema.`INNODB_LOCK_WAITS`;

相关推荐
城管不管40 分钟前
MySQL 慢查询完整排查
java·服务器·jvm·数据库·mysql·spring·面试
mister_guo17 小时前
JVM 内存管理原理及生产配置实战:从“参数能启动”到“内存可控”
java·jvm
wear工程师2 天前
Java 类初始化到底何时触发?别把加载、连接和 static 执行混在一起
java·jvm
程序员雷欧2 天前
线上频繁触发各种 GC 的原因排查与处理指南
java·jvm·算法
wuminyu3 天前
JVM利用io_uring优化堆外内存性能原理剖析
java·linux·c语言·jvm·c++
147API4 天前
Python批量生成蒸馏数据,并发、重试、幂等和断点续跑
开发语言·jvm·python
wuminyu4 天前
JDK21解决虚拟线程IO阻塞原理剖析
java·linux·c语言·jvm·c++
sunywz4 天前
【JVM】(8)JVM调优实战及常量池详解
jvm
wuminyu5 天前
虚拟线程底层ForkJoinPool的工作窃取算法机制
java·linux·c语言·jvm·c++
leisoo80975 天前
股票数据本地化存储实战:JSON、数据库与列式存储的方案对比
jvm·数据库·json