建立JAVA项目

建立maven项目,加入Jmeter所需要的JAR包依赖。

POM.xml  加入如下:

org.apache.jmeter

ApacheJMeter_core

3.2

org.apache.jmeter

ApacheJMeter_components

3.2

org.apache.jmeter

ApacheJMeter_java

3.2

org.apache.jmeter

jorphan

3.2

实现JavaSamplerClient 接口

/**

* jmeter测试类

*

* @author hejb 2017.09.04

*

*/

public class AppForJmeter implements JavaSamplerClient {

/**

* 设置可用参数及的默认值

*/

public Arguments getDefaultParameters() {

System.out.println("i'm start");

return null;

}

/**

* 开始测试,从arg0参数可以获得参数值;

*/

public SampleResult runTest(JavaSamplerContext arg0) {

SampleResult sr = new SampleResult();

sr.sampleStart();// jmeter 开始统计响应时间标记

sr.setResponseData("test", null);

sr.setDataType(SampleResult.TEXT);

sr.setSuccessful(true);

sr.sampleEnd();// jmeter 结束统计响应时间标记

return sr;

}

/**

* 每个线程测试前执行一次,做一些初始化工作

*/

public void setupTest(JavaSamplerContext arg0) {

System.out.println("set Up Test");

}

/**

* 测试结束时调用;

*/

public void teardownTest(JavaSamplerContext arg0) {

System.out.println("down...");

}

public static void main(String[] args) {

System.out.println("test in main");

}

}

ps: 记得添加main方法

导出JAR包

把项目的JAR包导出

加入JAR包

\apache-jmeter-3.2\lib\ext

添加线程组

加入JAVA请求配置

可以找到刚刚的那个JAVA类

添加察看结果树

添加察看结果树,然后运行,可以看到JAVA中输出的内容

加入聚合报告

传入JAVA接受参数参数

传入参数,并获取进行处理

String message = "test";

/**

* 设置可用参数及的默认值

*/

public Arguments getDefaultParameters() {

Arguments arguments = new Arguments();

arguments.addArgument("message", "hello world!");

return arguments;

}

在RUN中进行获取值

/**

* 开始测试,从arg0参数可以获得参数值;

*/

public SampleResult runTest(JavaSamplerContext arg0) {

message = arg0.getParameter("message");

SampleResult sr = new SampleResult();

sr.sampleStart();// jmeter 开始统计响应时间标记

sr.setResponseData("test:" + message, null);

sr.setDataType(SampleResult.TEXT);

sr.setSuccessful(true);

try {

Thread.sleep(10);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

sr.sampleEnd();// jmeter 结束统计响应时间标记

return sr;

}

记得每次修改需要重新导出JAR包,放入到ext下,然后重新启动jemeter,能看到参数设置

收到参数

性能报告,

这样就可以用JAVA去压测RPC接口了,(如dubbo接口的压测,长连接的压测等)

记录下,免得下次还得重新搜怎么做

java fastdfs 压测_利用jmeter+JAVA对RPC的单接口(dubbo接口等)进行性能测试,零基础(2)...相关推荐

  1. java 多线程压测_java多线程Jmeter压测实现

    笔者最近在看jmeter源码,对多线程处理部分的了解记录如下. Part1 线程与多线程概念 提到线程先来看一下进程(线程的容器)的概念,进程是一个具有独立功能的程序关于某个数据集合的一次运行活动.它 ...

  2. java disruptor压测_探索Disruptor

    Disruptor(finalRingBuffer ringBuffer,finalExecutor executor) Disruptor 通过 java.util.concurrent.Execu ...

  3. Java性能压测工具及其调优

    Java性能压测工具及其调优 JMeter工具 使用 JVisualVM使用 使用 简介 在日常的开发中,Java的性能显得尤为重要,一个程序的好坏主要就是性能来决定的. JMeter工具 JMete ...

  4. dubbo 服务压测_全链路压测资料汇总——业内大厂解决方案

    最近忙于公司的全链路压测平台调研和技术规划文档输出工作,参考了全网能搜到的业内大厂的全链路压测方案,这里做个汇总,以及将个人认为可以落地的方案做一个关键点整理. 技术链接 滴滴全链路压测解决之道 阿里 ...

  5. 什么是预热 压测_全链路压测探索实践之路

    背景 去年双十一,为了应对零点的峰值流量冲击,我们在八月下旬启动了全链路压测第一次实践.由于从零开始,因此单独搭建了一套和生产1:1的环境,2个月的时间,光环境成本就高达几百万.经过双十一,压测团队从 ...

  6. dubbo 服务压测_不可忽视的Dubbo线程池

    问题描述 线上突然出现Dubbo超时调用,时间刚好为Consumer端设置的超时时间. 有好几个不同的接口都报超时了 第1次调用超时,第2次(或第3次)重试调用非常快(正常水平) Dubbo调用超时的 ...

  7. java模拟数据库压测_写并发压测 java 脚本你必须会的 3 个类

    性能测试做到后面,一些特殊的场景利用常用的现成工具满足不了需求,所以你需要学习java写一些特定协议的压测脚本,那你不得不研究多线程或线程池,而此时你也一定会遇到java并发编程中的几个类,今天重点讲 ...

  8. java常用压测工具_几款常用压测工具推荐

    ab ab是apache自带的压力测试工具,使用起来非常方便. 安装 如果安装了apache, 那么ab已经安装好了,如果不想安装apache的话,可以通过以下方式安装ab # ubuntu sudo ...

  9. Java 应用压测性能问题定位经验分享

    什么是压测 压测,即压力测试,是确立系统稳定性的一种测试方法,通常在系统正常运作范围之外进行,以考察其功能极限和和可能存在的隐患. 压测主要用于检测服务器的承受能力,包括用户承受能力,即多少用户同时使 ...

最新文章

  1. eclipese web前端开发教学_Web前端零基础好学吗?新手该怎么学?
  2. 服务器安装Windows Server + Ubuntu双系统
  3. 成功解决python\ops\seq2seq.py TypeError: ms_error() got an unexpected keyword argument 'labels'
  4. Android异步任务机制之AsycTask
  5. 体绘制的原理和Raycasting的实现
  6. IDC商人应不应该给客户提供服务器测试?```
  7. 海南关于推荐扬尘监控系统的通知_实时监管!定州对44家混凝土搅拌企业实施远程视频监控...
  8. 车牌识别代码学习笔记
  9. php h5微信支付签名错误,微信H5支付签名错误
  10. 解决Word中插入表格超过页面边界问题
  11. 关于高速光耦6n137的使用总结_高速光耦6n137典型应用电路图汇总(多谐振荡/光电隔离器/光耦开关)...
  12. 2017年问题汇总-待整理
  13. 后台管理 vue+element 开源框架
  14. 大王java_加瓦java大王
  15. Linux之convert命令的使用
  16. 蚊子可携带 HIV 吗???
  17. Storm Bolt之定时机制Tick应用
  18. Python入门——实现简易数码时钟
  19. 计算机科学与技术专业未来规划,大一计算机科学与技术专业职业生涯发展规划书...
  20. c语言程序设计 第七章函数,《C语言程序设计》第七章随堂练习:自定义函数

热门文章

  1. ims系统 呈现服务器,基于IMS的呈现服务器的设计与实现
  2. Tomcat核心架构和启动流程解析
  3. 遗传算法入门到掌握(二)
  4. multisim二极管_快恢复二极管与肖特基二极管有何区别?你用对了吗
  5. 射击比赛(java)
  6. Java 并发编程之 Atomic 类
  7. php pdo 预处理删除,PHP PDO扩展整理,包括环境配置\基本增删改查\事务\预处理
  8. python使用pillow下载网络图片到本地预览
  9. jupyter配置不同的conda环境
  10. django-xadmin出现Models aren't loaded yet错误