JMeter是Apache 下基于Java 的一款性能测试和压力测试工具。它基于Java 开发,可对HTTP 服务器和FTP服务器,甚至是数据库进行压力测试。

下载地址:http://jmeter.apache.org/download_jmeter.cgi

中文教程:https://www.yiibai.com/jmeter/

1)如何切换中文界面

编辑/bin/jmeter.properties文件,

找到被注释的#language那一行,更改为 language=zh_CN

2)入门HTTP测试

使用版本:5.0 ,环境:windows

第一步:新建线程组

第二步:配置线程数10,每条线程循环200次。

第三步:配置取样器,这里是HTTP请求。

第四步:配置HTTP请求参数,服务器IP,端口号,路径,HTTP参数等。

第五步:生成测试报告。JMeter提供图形、表格等多种形式的报告,报告有各项参数,包括平均响应时间、错误数和吞吐量。这里是生成聚合报告。

第六步:配置完成后,单机顶部绿色的三角图形,启动,即可进行测试。测试完成后,查看吞吐量那一栏(Throughput)。

3)调优过程示例

为了减少GC次数, 可以使用合理的堆大小和永久区大小。这里将堆大小设置为512MB, 永久区使用32MB, 同时, 禁用显示GC, 并去掉类校验。参数如下:

  set CATALINA_OPTS=%CATALINA_OPTS% "-Xmx512M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-Xms512M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-XX:PermSize=32M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-XX:MaxPermSize=32M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-XX:+DisableExplicitGC"

  set CATALINA_OPTS=%CATALINA_OPTS% "-Xverify:none"

为了进一步提高系统的吞吐量, 可以尝试使用并行回收收集器代替串行收集器。

  set CATALINA_OPTS=%CATALINA_OPTS% "-Xmx512M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-Xms512M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-XX:PermSize=32M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-XX:MaxPermSize=32M"

  set CATALINA_OPTS=%CATALINA_OPTS% "-XX:+DisableExplicitGC"

  set CATALINA_OPTS=%CATALINA_OPTS% "-Xverify:none"

  set CATALINA_OPTS=%CATALINA_OPTS% -XX:+UseParallelGC

  set CATALINA_OPTS=%CATALINA_OPTS% -XX:+UseParallelOldGC

  set CATALINA_OPTS=%CATALINA_OPTS% -XX:ParallelGCThreads=8

JVM调优之JMeter使用(三)的更多相关文章

  1. jmeter --JVM调优设置

    JMeter用户可根据运行的计算机配置,来适当调整JMeter.bat中的JVM调优设置,如下所示: set HEAP=-Xms512m -Xmx512m set NEW=-XX:NewSize=12 ...

  2. JVM调优总结(三)——分代垃圾回收详述

    为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的.因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率. 在Java程序运行的过程中,会产生大量的对象, ...

  3. JVM调优(三)——基于Btrace的监控调试

    JVM调优(三)--基于Btrace的监控调试 简介 Btrace可以动态地向目标应用程序的字节码注入追踪代码 用到的技术: JavaComplierApi.JVMTI.Agent.Instrumen ...

  4. 深入理解JAVA虚拟机(内存模型+GC算法+JVM调优)

    目录 1.Java虚拟机内存模型 1.1 程序计数器 1.2 Java虚拟机栈 局部变量 1.3 本地方法栈 1.4 Java堆 1.5 方法区(永久区.元空间) 附图 2.JVM内存分配参数 2.1 ...

  5. 面试总问的jvm调优到底是要干什么?

    1. 压力测试的理解,xxx的性能10w/s,对你有意义么? 没有那家卖瓜的会说自己家的不甜,同样,没有哪个开源项目愿意告诉你在对它条件最苛刻的时候压力情况是多少,一般官网号称给你看的性能指标都是在最 ...

  6. JVM调优和深入了解性能优化

    JVM调优的本质: 并不是显著的提高系统性能,不是说你调了,性能就能提升几倍或者上十倍,JVM调优,主要调的是稳定.如果你的系统出现了频繁的垃圾回收,这个时候系统是不稳定的,所以需要我们来进行JVM调 ...

  7. 类加载机制+JVM调优实战+代码优化

    类加载机制 Java源代码经过编译器编译成字节码之后,最终都需要加载到虚拟机之后才能运行.虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直 ...

  8. JVM调优2-远程监控

    监控远程JVM VisualJVM不仅是可以监控本地jvm进程,还可以监控远程的jvm进程,需要借助于JMX技术实现. 什么是JMX JMX(Java Management Extensions,即J ...

  9. jvm系列(六):jvm调优-从eclipse开始

    jvm调优-从eclipse开始 概述 什么是jvm调优呢?jvm调优就是根据gc日志分析jvm内存分配.回收的情况来调整各区域内存比例或者gc回收的策略:更深一层就是根据dump出来的内存结构和线程 ...

随机推荐

  1. c#之AES加密解密

    .Net已封装好算法,直接调用即可,代码如下: 转载请注明出处:https://www.cnblogs.com/jietian331/p/9707771.html using System; usin ...

  2. platform怎么实现数据数据和驱动分离

    一些重要的结构体: struct platform_device { const char * name; int id; struct device dev; u32 num_resources; ...

  3. JVM探秘6--图解虚拟机栈的局部变量表和操作数栈工作流程

    案例代码如下: public class JVMTest { public static Integer num = 10; public int add(int i){ int j = 5; int ...

  4. 中文编码错误,Error output could not be translated from the native locale to UTF-8.

    假如使用http访问仓库,用户配置的pre-commit钩子里面如果有中文,可能会出现"Error output could not be translated from the nativ ...

  5. PowerDesigner 15的Table表视图的列显示Code

    PowerDesigner 15的图表的Table表视图一般显示成这样: 现在,我要将Code显示到Table表视图上,该怎么做?选择菜单:Tools→Display Preferences,弹出对话 ...

  6. java 执行https的请求

    普通的get和post请求只能执行http的请求,遇到的了https的就歇菜了,需要SSL安全证书处理. 该方法只能用jdk1.7和1.8进行处理,jdk1.6会报Could not generate ...

  7. 二分法bug修复

    public class Main { public static void main(String[] args) { int[] arr = {1,2,3,4,5,6,7,8,9,10}; int ...

  8. 系统管理--配置Gitlab

    很多教程都有配这个,但这个又不能用于”源码管理”模块拉取代码,我一直很困惑这个配置有什么用,然后就找到了该插件的github项目地址才弄明白,链接:https://github.com/jenkins ...

  9. js 获取屏幕或元素宽高...

    窗口相对于屏幕顶部距离 window.screenTop 窗口相对于屏幕左边距离 window.screenLeft, 屏幕分辨率的高 window.screen.height, 屏幕分辨率的宽 wi ...

  10. radhat6.6上安装oracle12c RAC (二)

    二.GI(Grid Infrastructure)安装 首先将安装包传到node1的目录 2.1 GI软件安装 2.1.1.解压安装包 #su - grid解压 GRID 到 GRID用户的$ORAC ...