码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • JVM优化(OOM,内存溢出),查看线程快照,堆内存情况等问题


    1:堆大小 = 新生代 + 老年代,新生代 ( Young ) 与老年代 ( Old ) 的比例的值为 1:2 ( 该值可以通过参数 –XX:NewRatio 来指定 )

    在这里插入图片描述

    2:-Xmn参数总是应当小于-Xmx参数,否则就会触发OOM错误

    3:jvm优化与查看gc回收情况,gc.log在当前启动目录下

    java -Xms512m -Xmx512m -Xmn64m -XX:+HeapDumpOnOutOfMemoryError  -XX:HeapDumpPath=G:\javaDemoProject\reTryDemo\poi\target\pp.dump -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:gc.log -jar poi.jar
    
    • 1

    3-1:不打印堆内存报错输出

    java -Xms512m -Xmx512m -Xmn64m -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:gc.log -jar poi.jar
    
    • 1

    4:jvm优化一般默认就行

    如果没有明确指定最大内存 (-Xmx) 参数,则Java虚拟机 (JVM) 的默认最大内存取决于操作系统的限制。通常,JVM默认将最大内存设置为物理内存的1/4或1/8
    如果没有单独指定新生代内存 (-Xmn) 参数,则JVM默认将其设置为整个堆内存的1/3或1/4
    请注意,这些值需要根据你的应用程序的具体需求进行调整。使用过大的内存可能导致性能问题或者系统资源不足,而过小的内存可能导致内存溢出错误。确保合理地设置这些参数以满足应用程序的需求

    4:查看某个进程下面线程详细情况,H必须大写

    top -H -p pid
    
    • 1

    4-1:例如查看java进行下面的线程情况

    在这里插入图片描述

    4-2:查看进行下面的线程快照

    jstack pid > xxx.txt
    
    • 1

    4-3:查看进程堆内存情况或者线程堆内存情况

    jmap -heap pid
    
    • 1

    4-3:javap -v Hello.class查看编译后的class文件

    javap -v Hello.class
    
    • 1
  • 相关阅读:
    Dextran-ALK,葡聚糖-炔基|炔基修饰葡聚糖,葡萄糖/乳糖基/黄原胶/岩藻多糖/木聚糖
    Openpyxl笔记
    Linux(2):初探
    电影寒冬之下,票房靠“主旋律”能撑住场吗?《扫黑行动》仍在重播
    开发Chrome插件,实现网站自动登录
    力扣labuladong——一刷day02
    产品经理经验谈100篇(十一)-策略产品经理:模型与方法论
    nvidia-smi详解
    P1347 排序(拓扑 + spfa判断环 or 拓扑[内判断环])
    井下特种兵——智能管网监测终端
  • 原文地址:https://blog.csdn.net/qq_19891197/article/details/132802453
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号