码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • JVM知识总结(性能调优)


    文章收录在网站:http://hardyfish.top/

    文章收录在网站:http://hardyfish.top/

    文章收录在网站:http://hardyfish.top/

    文章收录在网站:http://hardyfish.top/

    在这里插入图片描述

    性能调优

    何时进行JVM调优?

    遇到以下情况,就需要考虑进行JVM调优了:

    • Heap内存(老年代)持续上涨达到设置的最大内存值
    • Full GC 次数频繁
    • GC 停顿时间过长(超过1秒)
    • 应用出现OutOfMemory等内存异常
    • 系统吞吐量与响应性能不高或下降

    JVM调优基本原则:

    大多数的Java应用不需要进行JVM优化

    大多数导致GC问题的原因是代码层面的问题导致的(代码层面)

    上线之前,应先考虑将机器的JVM参数设置到最优

    减少创建对象的数量(代码层面)

    减少使用全局变量和大对象(代码层面)

    优先架构调优和代码调优,JVM优化是不得已的手段(代码、架构层面)

    分析GC情况优化代码比优化JVM参数更好(代码层面)

    JVM调优目标:

    延迟:

    • GC低停顿和GC低频率

    没有FullGC

    高吞吐量

    JVM调优步骤:

    一般情况下,JVM调优可通过以下步骤进行:

    • 分析GC日志及Dump文件,判断是否需要优化,确定瓶颈问题点
    • 确定JVM调优量化目标
    • 确定JVM调优参数(根据历史JVM参数来调整)
    • 依次调优内存、延迟、吞吐量等指标
    • 对比观察调优前后的差异
    • 不断的分析和调整,直到找到合适的JVM参数配置
    • 找到最合适的参数,将这些参数应用到所有服务器,并进行后续跟踪

    JVM调优建议

    年轻代和老年代的比例需要结合实际场景调整

    • 由于老年代的GC成本通常都会比年轻代的成本要高许多。
    • 所以建议适当地通过Xmn命令区设置年轻代的大小,最大限度的降低对象晋升到老年代的情况。

    合理设置Eden区和Survivor区比例

    • 合理分配Eden区和Survivor区,尽量不要让对象进入老年代。
  • 相关阅读:
    JDK与JRE的关系
    Java包装类
    R语言在vector向量数据末尾追加新的元素(在已知向量末尾添加单个标量数据形成新的向量)
    android系统目录结构
    麒麟系统 UFW 操作文档
    细胞衰老——酪氨酸激酶抑制剂
    netty中的核心MessageToMessage编码器
    八、T100应付管理系统之员工费用报销管理篇
    微软Edge浏览器全解析
    SaleSmartly新增AI意图识别触发器!让客户享受更精准的自动化服务
  • 原文地址:https://blog.csdn.net/qq_35508033/article/details/140951058
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | 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号