文件上传服务器jvm调优,JVM性能调优解决方案(12页)-原创力文档

精品文档

JVM性能调优解决方案(总结)

一、引言

本文的读者是技术支持人员。阅读本文后,你将理解 jboss 的启动脚本文件

(run.sh )中有一系列的 JVM配置参数的含义,以及如何调整它们,从而使得

MegaEyes中心管理服务器的性能得到优化。

MegaEyes中心管理服务器的性能调优涉及到系统的多个方面, 包括 MegaEyes

应用本身、应用服务器( jboss )、数据库和 java 虚拟机( JVM)等等。本文重

点介绍 JVM的性能优化。

需要注意的是, JVM性能调优具有应用独特性( application specific ),

就是说,不同的应用情形应该有不同的调整方案,这就要求你首先要观察 JVM

的运行状态, 然后根据观察结果调整参数。 没有一个通用的调优方案可以适用于

所有的 MegaEyes应用。

什么是性能调优

对性能调优,不同的人有不同的理解,本文是指对下列指标最大化:

并发用户( concurrent users ),在服务请求失败或请求响应超过预期

时间之前,系统支持的最大并发用户数量。

系统容量( throughput ),可以用每秒处理的事务( transaction )数量

计算。

可靠性( reliability )

换句话说,我们想对更多的用户提供更快捷的、不会中断的服务。

JVM性能调优的重点

JVM的性能调优的重点是垃圾回收 (gc,garbage collection )和内存管理。

垃圾回收的时候会导致整个虚拟机暂停服务, 因此,应该尽可能地缩短垃圾回收

的处理时间。

JVM内存

JVM占用的内存称为堆( heap),它被分为三个区:年轻( young ,又称为

new)、老( tenured ,又称为 old )和永生( perm)。这三个区是按照 java 对

1 欢迎下载

精品文档

象的生存期划分的,在 new 区的对象生存期最短,很快就会被 gc 回收;perm 区

的对象生存期最长,与 JVM同生死。 Perm区的对象不会被 gc 回收。

new 区又被分为三个部分:伊甸园( eden)和两个幸存者( survivor )。对

象的创建总是在 eden 部分(这大概就是命名该部分为 eden 的原因吧)。两个

survivor 中总有一个是空的, 它作为另一个 survivor 的缓冲区。当 gc 发生时,

所有 eden 和 survivor 中活下来的对象被移动到另一个 survivor 中。对象会在

两个 survivor 之间不断移动,直到活得足够久,然后移动到 old 区。我们可以

猜想,之所以如此划分使用内存, 肯定是为了缩短 gc 的执行时间, 提高 gc 的执

行效率。

垃圾回收算法

除了默认的垃圾回收算法外, JVM还提供了两个:并行( parallel )和并发

(co

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值