亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

JVM參數設置對tomcat性能影響初探1

標簽:
設計模式

1 tomcat性能影响实验

1.1配置环境说明:

  • tomcat7

  • 一个jsp网站

  • 测试网站吞吐量(1个指标、停顿时间,内存的使用情况,包括回收的效率...)

1.2 工具:

  • apache jmeter

1.3 实现原理:

  • 通过jmeter对tomcat增加压力,不同的虚拟机参数应该会有不同的表现。

1.4 目的:

  • 观察不同配置参数对吞吐量的影响

2 列举如下7种测试场景

2.1 测试串行回收器

  • (使用-XX:+UseSerialGC 参数可以指定使用新生代串行收集器和老年代串行收集器)

  • -XX:+PrintGCDetails -Xmx32m -Xms32m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseSerialGC
    -Xloggc:d:/gc.log -XX:PermSize=32m

  • 测试结果显示的吞吐量:908|90

2.2 扩大堆内存以提升系统性能

  • -XX:+PrintGCDetails -Xmx512m -Xms32m -XX:+HeapDumpOnOutOfMemoryError -XX:+UseSerialGC
    -Xloggc:d:/gc.log -XX:PermSize=32m

  • 测试结果显示的吞吐量:3362|335

2.3 调整初始堆大小

  • -XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
    -XX:+UseSerialGC -Xloggc:d:/gc.log -XX:PermSize=32m

  • 测试结果显示的吞吐量:4132|412

2.4 测试ParNew回收器的表现

  • (使用-XX:+UseParNewGC 参数设置,表示新生代使用并行收集器,老年代使用串行收集器)

  • -XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
    -XX:+UseParNewGC -Xloggc:d:/gc.log -XX:PermSize=32m

  • 测试结果显示的吞吐量:4271|426

2.5 使用ParallelOldGC回收器

  • (使用-XX:+UseParallelGC 参数设置,表示新生代和老年代均使用并行回收收集器)

  • -XX:+UseParallelGC:新生代使用并行回收收集器,老年代使用串行收集器。

  • -XX:+UseParallelOldGC:新生代和老年代都是用并行回收收集器。

  • -XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
    -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:ParallelGCThreads=8 -Xloggc:d:/gc.log
    -XX:PermSize=32m

  • 测试结果显示的吞吐量:4997|498

2.6 测试CMS回收器的性能

  • (设置参数-XX:+UseConcMarkSweepGC 可以要求新生代使用并行收集器,老年代使用 CMS)

  • -XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
    -XX:+UseConcMarkSweepGC -XX:ConcGCThreads=8 -Xloggc:d:/gc.log
    -XX:PermSize=32m

  • 测试结果显示的吞吐量:4223|421

2.7 测试G1回收器的性能

  • -XX:+PrintGCDetails -Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
    -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:ParallelGCThreads=8 -Xloggc:d:/gc.log
    -XX:PermSize=32m -XX:MaxGCPauseMillis=200 -XX:MaxGCPauseMills=20

  • 测试结果显示的吞吐量:3298|329

2.8 -XX:HeapDumpOnOutOfMemoryError

  • 另一个与之相关联的参数: -XX:HeapDumpPath=/temp/ 该参数的含义是指定dump的文件目录

3.其它说明

3.1 JVM的新特性(jdk1.8)

  • 使用Metaspace(JEP 122)代替持久代(PermGen space)。在JVM参数方面,使用-XX:MetaSpaceSize和-XX:MaxMetaspaceSize代替原来的-XX:PermSize和-XX:MaxPermSize

3.2 一张简单说明JVM垃圾回收

webp

clipboard.png



作者:简简算算
链接:https://www.jianshu.com/p/272732e6b057


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消