`
JBossWeek
  • 浏览: 81302 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JBossAS性能调优和瘦身系列(2):JVM

阅读更多

l         根据机器配置和内存大小调整虚拟机的垃圾收集性能或者调整JDK5的垃圾收集性能

<o:p> </o:p>

l         x86硬件使用Bea JRockit虚拟机;

<o:p> </o:p>

l         使用64位的机器和支持64位的虚拟机来提供比通常2-4GB更大的堆,近来Sparc/SolarisSolaris 9(或者更高版本)、Itanium + JDK1.4Linux x64 + JDK5已经能够提供64位支持;

<o:p> </o:p>

l         如果不使用的32位地址(2-4GB)以上的堆空间,不要使用-d6464位支持的选项);使用64位地址,在完成相同任务的情况下需要更多的内存,而且不能够为应用带来任何好处;

<o:p> </o:p>

l         避免堆空间过大或过小(不能明确说明堆空间多大合适,因为这依赖于实际情况)。堆空间的大小影响代式垃圾的收集和扫描堆的时间;在堆空间较小的情况下,很难有效地进行性能调优(即使您的应用仅使用<st1:chmetcnv unitname="m" sourcevalue="200" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">200M</st1:chmetcnv>内存,如果采用并行垃圾收集策略和CMS,仍然需要使用512MB以上的堆空间),但是过大的堆空间将会在垃圾收集时需要更长的时间来扫描堆空间;

<o:p> </o:p>

l         避免使用Sun 1.4虚拟机;JDK5特别是在垃圾收集方面比1.4有显著的改善,JRockit虚拟机在x86平台上性能非常好;

<o:p> </o:p>

l         使用-server选项时,要么使用-XX:TheadStackSize=128kSolaris),要么使用-Xss128k(其它平台),在Solaris上,-Xss128k没有任何作用(you can only set Larger thread stack size);这些设置将是线程使用更少的内存作为栈,从而能够创建更多的线程,但是在运行复杂的递归代码时栈空间的减少将可能导致栈溢出;当然,使用128k的栈也无可厚非;

<o:p> </o:p>

l         理解垃圾收集器之间的区别,根据情况进行调整;并进行负载测试(OpenSTAJMeter等)来确保选择合适的垃圾收集器;

<o:p> </o:p>

l         最好使用多余2个处理器的多处理器计算机,并采用并行和并发的垃圾收集选项来获得最佳性能和更高的垃圾收集吞吐量;但是只有真正理解了垃圾收集器的工作原理,才能做出合适的调整;JDK5完全能够自我调整;

<o:p> </o:p>

l         调整JDK1.4NewSize的缺省值,经验规则(原文:bad rule of thumb):设置为小于20%比较好;设置为大于20%将非常危险,因为它可能引起虚拟机错乱地进行完整的垃圾收集(full garbage collection,并且不会休眠或释放足够的空闲内存。JDK5似乎已经修正了这个Bug,而且在缺省值的设置上更加合理;

<o:p> </o:p>

  

分享到:
评论

相关推荐

    JVM系列之性能调优参考手册(实践篇).pdf

    标题《JVM系列之性能调优参考手册(实践篇)》涉及的知识点主要集中在Java虚拟机(JVM)性能调优的实践操作。JVM作为Java程序运行的基础环境,对程序性能有着决定性影响。本手册的目的是指导开发者如何对JVM进行性能...

    JVM调优总结与ava虚拟机:JVM高级特性与最佳实践(最新第二版)

    《JVM调优总结》与《Java虚拟机:JVM高级特性与最佳实践》是两本深入探讨Java虚拟机(JVM)的书籍,对于Java开发者来说,它们提供了丰富的知识和实践经验,尤其对于想要理解JVM工作原理以及进行性能优化的专业人士更...

    Jboss AS7 性能调优

    【JBoss AS7 性能调优】 ...JBoss AS7性能调优涵盖了多个方面,包括JVM参数优化、资源池管理、日志记录和缓存策略。通过细致的调整,可以在不影响应用功能的前提下,最大化服务器性能,为用户提供更流畅的体验。

    jvm性能调优+内存模型+虚拟机

    jvm性能调优+内存模型+虚拟机 jvm性能调优+内存模型+虚拟机 jvm性能调优+内存模型+虚拟机

    JBoss 性能调优

    调优工作是一个持续的过程,它需要基于应用的实际负载和性能数据来进行不断的调整和优化。在这个过程中,可能需要不断地收集性能指标数据、分析系统瓶颈,并根据分析结果进行调整。一个有效的性能调优策略需要综合...

    006-jvm性能调优

    JVM性能调优 JVM(Java Virtual Machine...JVM性能调优需要了解JVM基础知识、JVM参数调优、堆空间内存分配、垃圾收集等知识点,并结合实际应用中的需求和限制,选择合适的JVM参数配置和垃圾收集算法,以提高JVM性能。

    JVM调优实践 ⼀、JVM调优准备⼯作 实验报告 pdf

    Java虚拟机(JVM)是Java程序运行的基础,它的调优是提高应用程序性能的关键环节。在JVM调优实践中,了解各个运行时数据区的工作原理至关重要。以下是对这些区域的详细解析: 1. **虚拟机栈**:每个线程都有一个...

    JVM面试资料:JVM结构、JVM调优、四大垃圾回收算法、七大垃圾回收器

    JVM面试资料。 JVM结构:类加载器,执行引擎,本地方法接口,本地内存结构; 四大垃圾回收算法:复制算法、标记-清除算法、标记-整理算法、分代收集算法 ...JVM调优:命令行指令,设置堆内存大小的参数

    个人总结之—JVM性能调优实战

    ### 个人总结之—JVM性能调优实战 #### 概述 本文档是一篇关于JVM(Java虚拟机)性能调优的经典实战总结。在实际应用开发与维护过程中,JVM性能调优是一个非常重要的话题,它直接关系到应用程序运行效率、资源利用...

    性能调优+JVM详解+JVM核心参数

    本教程详细介绍了JVM(Java虚拟机)的结构、类型和编译器模式、参数分类、即时编译器(JIT)诊断工具、垃圾回收机制、内存调优方法,以及并行和CMS垃圾回收器的优化策略。重点内容包括: JVM类型和编译器模式:...

    阿里巴巴Java性能调优实战(2021华山版)

    模块四主要讲解 JVM 性能监测及调优,包括 Java 对象的创建和回收、内存分配等。 模块五:设计模式调优 模块五主要讲解设计模式调优,包括架构设计中使用设计模式来优化架构设计的经验和实践。 模块六:数据库...

    阿里巴巴Java性能调优实战(2021华山版).docx

    6. Java性能调优:Java性能调优包括Java编程性能调优、多线程性能调优、JVM性能监测及调优、设计模式调优和数据库性能调优等。 7. Java编程性能调优:Java编程性能调优包括基础数据类型、容器调优和网络通信调优等。...

    Java性能优化指南:JVM调优技巧与实践

    通过合理配置JVM参数和采用一些调优技巧,开发者可以显著提高应用程序的性能。本文将探讨一些常用的JVM性能调优技巧,并提供代码示例来展示这些技巧的应用。 JVM性能调优是一个多方面的任务,涉及JVM配置、垃圾回收...

    分享:JVM及其性能调优,欢迎交流

    JVM(Java Virtual Machine)是Java程序运行的基础,它提供了执行Java字节码的环境。...总之,理解和掌握JVM的工作原理、内存管理、垃圾回收以及调优策略,对于解决Java应用性能问题和提升系统稳定性至关重要。

    JVM下篇:性能监控与调优篇.7z

    对于大型企业级应用,JVM的性能监控与调优是至关重要的,因为这直接影响到应用的响应速度、稳定性和资源利用率。本篇文章将深入探讨JVM的性能监控和调优技术。 1. **内存管理**: - **堆内存**:Java对象主要存储...

    阿里巴巴Java性能调优实战(2021-2022华山版)+Java架构核心宝典+性能优化手册100技巧.rar

    阿里巴巴Java性能调优华山版是一套系统性能调优教程,!通过这份笔记的学习,你将会有一个系统的调优头脑和策略!快了何止100%?需要的朋友可下载试试! 众所周知性能调优可以使系统稳定,用户体验更佳,甚至在...

    JVM调优篇.pdf

    JVM类加载机制详解 JVM类加载机制是Java虚拟机中的一种机制,它负责加载Java类文件到内存中,以便执行Java程序。类加载机制分为五个阶段:加载、验证、准备、解析和初始化。 加载 加载是类加载过程中的一个阶段,...

    JVM性能调优总结.docx

    JVM性能调优是Java开发中非常重要的一方面,直接影响到系统的性能和稳定性。本文将总结JVM性能调优的经验和技巧,并提供一些实用的配置参数和建议。 一、堆大小设置 堆大小是JVM性能调优中的一个关键参数。堆大小...

    JVM垃圾回收机制与GC性能调优

    本文主要探讨JVM堆内存的结构和GC的工作原理,以及如何进行性能调优。 JVM堆是Java应用程序的主要内存区域,用于存储所有类实例和数组。它分为三个主要区域:新域(Young Generation)、旧域(Old Generation)和...

    J2EE应用性能调优.docx

    【性能调优--2:性能调优方法】 性能调优的方法通常涉及多个层面,包括: 1. **基准测试**:通过模拟实际工作负载来评估系统性能,找出性能瓶颈。 2. **监控与日志分析**:收集系统运行时的数据,分析资源使用情况...

Global site tag (gtag.js) - Google Analytics