java jvm部分命令 ~~还在完善中

命令整理

jps

-q 只输出进程号
-m main 函数的参数
-l 主类全名
-v 输出jvm参数

jstat

jstat -gc pid 1000 10

class gc gccapacity gcutil gccause gcnew gcnewcapacity gcold gcoldcapacity compiler printcompilation gcmetacapacity

jinfo

-sysprops pid

-flags pid

-flag ReservedCodeCacheSiz(参数) pid

jmap

jmap -dump:format=b,file= 11408

jhat 分析dump文件

jhat dump.hprof

jstack

jstack pid

参数

FieldsAllocationStyle 虚拟机策略分配参数

UseTLAB 本地线程分配缓冲

CompactFields 子类较窄的变量允许插入到父类变量的空隙中

HeapDumpOnOutOfMemoryError 堆溢出时虚拟机输出快照 java.lang.OutOfMemoryError: Java heap space

Xmn 新生代大小

Xms 最小堆

Xmx 最大堆 Xms=Xmx 堆内存不可扩展

Xoos 本地方法栈大小 没啥用

Xss 栈容量 虚拟机栈容量越大可以创建的线程数量就越小

前提:32位虚拟机

如果因为内存不够用导致不能创建更多的线程可以通过减少栈容量和堆容量的方式增加线程的数量

PrintGCDetails 垃圾回收GC信息

永久代 jdk7以前 限制常量池大小

PremSize

MaxPremSize

jdk7之后 永久代没有了 是元空间 premSize 就没有作用了 都在堆中 只有限制 Xmx才有作用

jdk8之后永久代完全退出

元空间设置

MaxMetaspaceSize -1不受限制

MeataspaceSize 设置初始化大小

MinMetaspaceFreeRatio 垃圾回收之后最小元空间百分比

MaxMetaspaceFreeRatio 用于控制最大元空间百分比

MaxDirectMemorySize 直接内存大小 默认和堆大小一致

相关推荐
SamDeepThinking几秒前
Spring Bean作用域的设计与使用
java·后端·面试
Shorasul1 分钟前
如何修改数据库实例名_ORACLE_SID环境变量重命名实战
jvm·数据库·python
Flittly3 分钟前
【SpringSecurity新手村系列】(2)整合 MyBatis 实现数据库认证
java·安全·spring·springboot·安全架构
iDao技术魔方3 分钟前
Bun v1.3.12 深度解析:新特性、性能优化与实战指南
开发语言·javascript·visual studio code
charlie11451419115 分钟前
嵌入式C++工程实践——第13篇:第一次重构 —— enum class取代宏,类型安全的开始
开发语言·c++·vscode·stm32·安全·重构·现代c++
2301_8035389516 分钟前
如何在 Go 中精确安装指定版本的模块.txt
jvm·数据库·python
jiayong2316 分钟前
第 13 课:分页、页码状态和 URL 同步
开发语言·前端·javascript·vue.js·学习
Greyson117 分钟前
如何利用RMAN修复逻辑坏块_VALIDATE CHECK LOGICAL验证块内结构损坏
jvm·数据库·python
Oliver_LaVine19 分钟前
java项目启动报错:CreateProcess error=206, 文件名或扩展名太长
java·linux·jenkins
CHANG_THE_WORLD23 分钟前
C++ 文件读取函数完全指南
开发语言·c++