`
wuce7758
  • 浏览: 185793 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
  • YTT1121: 有网络拓扑发现的源代码么?能不能发我一份学习一下,现在我正要做 ...
    java拓扑图
  • YTT1121: 大神,有网络拓扑发现的源代码么?或者您会编写么?我需要做科研改 ...
    java拓扑图
  • YTT1121: 大神,有网络拓扑发现的源代码么?或者您会编写么?我需要做科研改 ...
    java拓扑图
  • poettang: 求代码分享学习,谢谢!膜拜大神!258026921@qq.co ...
    java拓扑图
  • oiqio: 87836238@qq.com,感谢楼主,来一份~
    java拓扑图

java 虚拟机调优

阅读更多

新项目生产环境搭建好以后,把系统部署上去,观察jvm的日志。发现YGC和FGC非常频繁,期间尝试了几种参数的调整,最后确定下面所列的调整参数,现在比较稳定,还带长时间的观察。

 

1:64位机器可以突破内存3G的限制

2:Xmx和XmsMaxPermSize和MinPermSize设置一样大,这样可以减轻伸缩堆大小带来的压力

3:如果对响应时间要求比较高,是有CMS垃圾回收算法

4:对于像使用SSH,EOS之类的perm 区域设置大一些

5:为了避免Perm区满引起的full gc,建议开启CMS回收Perm区选项:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled

6: 避免程序调用System.gc()。(rmi 内部使用的比较多,-XX:+DisableExplicitGC 强制关闭)

7:调大救援空间,避免old不足,引起full gc

-Xmx3072M  最大Heap(大小)Heap=young + old 不包含perm区域
-Xms3072M  最小Heap
-Xmn600M 年轻代代销
-XX:PermSize=500M  持久代初始大小
-XX:MaxPermSize=500M  持久代最大代销
-XX:+DisableExplicitGC 关闭System.gc()
-XX:SurvivorRatio=1 eden/survivor大小比例
-XX:+UseConcMarkSweepGC 启用并发垃圾收集(默认是并行),只对年老代有效
-XX:+UseParNewGC 年轻代使用必行收集
-XX:+CMSParallelRemarkEnabled 使用并行标记,极少标记暂停时间
-XX:+UseCMSCompactAtFullCollection 在FULL GC的时候,压缩内存,CMS是不会移动内存的,因此,这个非常容易产生碎片,导致内存不够用,因此,内存的压缩这个时候就会被启用
-XX:CMSFullGCsBeforeCompaction=0  指定多少次FULL GC以后才进行内存压缩
-XX:+CMSClassUnloadingEnabled
-XX:LargePageSizeInBytes=128M 内存页的大小, 不可设置过大, 会影响Perm的大小
-XX:+UseFastAccessorMethods 原始类型的快速优化
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=80 年老代区域大小多少(百分比)进行cms收集
-XX:SoftRefLRUPolicyMSPerMB=0
-XX:+PrintClassHistogram  下面四个参数打印日志
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
-Xloggc:/home/eos/logs/gc.log 日志存放位置

分享到:
评论

相关推荐

    jvm java虚拟机 调优 马士兵 笔记

    jvm java虚拟机 调优 马士兵 笔记 让你对java虚拟机调优有初步的认识

    java虚拟机调优大师

    以下将详细介绍Java虚拟机调优的一些核心概念和实践方法。 1. **JVM架构** - 类加载器:负责加载类文件到JVM内存中,分为启动类加载器、扩展类加载器和应用类加载器。 - 方法区:存储类的信息,如类名、常量、...

    java虚拟机调优--某培训班的课件与源码

    本资源"java虚拟机调优--某培训班的课件与源码"提供了一套全面的培训材料,旨在帮助开发者深入理解和优化JVM的工作机制。 在Java开发中,JVM调优是一项至关重要的技能,它可以显著提高应用的性能,减少内存占用,...

    java虚拟机调优(马士兵)-课程例子程序T01-T05

    马士兵老师的“Java虚拟机调优”课程旨在帮助学员深入理解JVM的工作原理,通过实例程序提升Java应用程序的性能。在本课程中,T01到T05的例子程序涵盖了多个关键的JVM调优知识点,让我们一一探讨。 首先,T01可能...

    Java虚拟机调优及问题排查手册.docx

    Java虚拟机调优及问题排查手册 本手册主要介绍Java虚拟机(JVM)的调优和问题排查解决方案。该手册涵盖了JVM排查、数据库连接排查、堆栈快照排查等多方面的内容。 JVM排查 JVM排查是指通过各种命令和工具来排查...

    JAVA虚拟机性能参数调优指导书.doc

    虚拟机调优是一个复杂而细致的过程,需要结合具体应用的负载情况和硬件资源进行。了解JVM的内部原理和参数含义,是优化性能的基础。通过持续监控、测试和调整,开发者可以找到最佳的JVM配置,从而实现性能的最大化...

    java虚拟机调优

    在深入探讨Java虚拟机(JVM)调优之前,首先需要了解JVM的内部结构和内存模型。JVM是Java平台的核心,负责执行Java程序。它主要由两个子系统和两个组件构成。子系统包括类加载器(Classloader)和执行引擎...

    java虚拟机调优大师--关于JVM项目程序调优代表性的实例,eclipse优化

    实战:Eclipse运行速度调优。案例分析。高性能硬件上的程序部署策略

    Java虚拟机实战-垃圾回收及性能调优

    Java虚拟机实战-垃圾回收及性能调优

    优化Java虚拟机(大全+实例)

    Java虚拟机(JVM)是Java程序运行的基础,它负责执行字节码并管理内存。JVM的调优是提高Java应用性能的关键步骤,特别是对于那些内存密集型或高并发的系统。本文将深入探讨JVM的优化策略,包括堆内存设置、垃圾回收...

    Java虚拟机性能参数调优指导书

    在Java开发领域,Java虚拟机(JVM)的性能调优是提升应用程序效率的关键环节。《Java虚拟机性能参数调优指导书》由姚建华编著,为开发者提供了深入理解和优化JVM的宝贵资源。本书详细阐述了JVM的运行机制、参数分类...

    JAVA虚拟机性能参数调优指导书

    ### JAVA虚拟机性能参数调优指导书:关键知识点解析 #### 概述 在现代企业级软件开发领域,Java作为一种主流编程语言,其虚拟机(JVM)的性能调优成为提升应用程序效率的关键环节。Java虚拟机性能参数调优不仅关乎...

    优化Java虚拟机总结(jvm调优)

    Java虚拟机优化(JVM调优)总结 Java虚拟机(JVM)是Java语言的运行环境, plays a crucial role in the execution of Java programs. 优化Java虚拟机的性能是提高Java应用程序性能的关键。下面是Java虚拟机优化的...

    Java虚拟机性能参数调优.docx

    "Java虚拟机性能参数调优" Java虚拟机性能参数调优是Java开发中一个非常重要的方面。Java虚拟机(JVM)是Java技术的基石,它是一种虚拟机技术,融合了编译技术、CPU技术,能够识别Java字节码并将其翻译成机器能够...

    深入理解Java虚拟机(jvm性能调优+内存模型+虚拟机原理).zip

    《深入理解Java虚拟机》是一本深度探讨Java虚拟机(JVM)的著作,涵盖了JVM性能调优、内存模型以及虚拟机原理等多个关键领域。本文将基于这些主题,详细阐述其中的重要知识点。 首先,我们要了解Java虚拟机(JVM)...

    Java虚拟机规范中文版(JavaSE7).pdf

    Java虚拟机(JVM)是Java编程语言的核心组成部分,它是一种抽象的计算设备,能够运行Java字节码。Java虚拟机规范(Java SE 7版)是定义JVM行为的官方文档,确保所有Java平台的实现遵循相同的规则,以提供跨平台的...

    Java虚拟机规范 JavaSE7

    Java虚拟机(JVM)是Java程序运行的基础,它负责执行Java字节码,提供了一个与平台无关的执行环境。JVM规范定义了JVM的结构、指令集和运行时数据区,以及如何执行指令和处理异常。自1999年以来,JVM规范经历了多次...

    性能调优专题 -Java虚拟机性能调优与底层原理分析

    性能调优专题_-Java虚拟机性能调优与底层原理分析

    Java虚拟机的分析与研究.zip

    七、Java虚拟机调优 Java性能调优通常包括JVM参数调整、代码优化、数据库连接优化等。例如,通过-Xms和-Xmx设置堆内存大小,-XX:NewRatio调整新生代和老年代的比例,-XX:+UseConcMarkSweepGC选择合适的垃圾收集器等...

Global site tag (gtag.js) - Google Analytics