文档章节

Jmeter的第一次尝试

pior
 pior
发布于 2017/07/21 16:20
字数 418
阅读 88
收藏 2

计划用Jmeter做下性能测试, 问题我们不是Web应用, 是纯TCP的交互系统, 所以要用Jmeter的TCP通信方式,

问题1, 怎么收发TCP消息.

Jmeter里有个TCP取样器, 用于TCP通信, 但是默认是字符通信, 也就是说收发消息是字符消息. 配置如下图:

但是我们通信是二进制数据, 怎么搞呢?

找到jmeter.properites文件, 将tcp.handler修改为如下:

这个BinaryTCPClientImpl就是一个用于二进制数据处理的工具. 这时就可以写十六进制数据进行发送了.

写一个服务端, 在收到消息后进行响应数据的发送. 但是发送jmeter收到消息以后也不处理, 没有后续操作,

且在jmeter上, 通过给TCP取样器添加 察看结果树 后, 还能看到响应失败, response code:500

问题2, 解决消息结束符问题

这个BinaryTCPClientImpl默认消息接收为消息流结束, 但我们这种交互应用是长链的, 通过消息长度等表示一个消息的结束, 那怎么能等到流结束呢. 于是又找到一个配置项, tcp.BinaryTCPClient.eomByte , 可以配置BinaryTCPClientImpl某个字节时, 做为消息的结束处理.

这样只要服务端回的消息中有0x00, 这个Tcp取样器就认为这个消息结束了.

这样就可以继续下一个TCP取样器的消息发送了,

但是, 这个配置, 只能支持一个字节. 显然不能支持用帧尾进行消息处理.

看来得自定义一个TCPClientImpl才能行.

© 著作权归作者所有

共有 人打赏支持
pior
粉丝 26
博文 151
码字总数 22496
作品 0
济南
高级程序员
私信 提问
使用JMeter进行性能测试

JMeter是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现。 JMeter作用领域 JMeter可以用于测试静态或者动态资源的性能(文件、Servlets、Perl脚本、java对象、数据...

红薯
2008/12/01
5.1K
10
Jmeter安装&第一个测试用例

2018-12-03 --------------------------- Jmeter安装汉化部分-不能再详细了(mac) 1.官网地址:http://jmeter.apache.org/download_jmeter.cgi 2.解压缩以后,进入apache-jmeter-5.0/bin,双......

carmen-ly
2018/12/04
0
0
jmeter+ant+jenkins

1,下载jenkins 2,修改jenkins.xml配置文件的端口,防止端口冲突(默认8080) 3,重启Jenkins服务器 4,下载ant 5,配置ant环境变量 6,录制jmeter脚本(脚本的录制可以使用badboy) 7,复制...

gool_hard
2018/06/26
0
0
eclipse 配置 jmeter

project : jmeter-NewDriver main: org.apache.jmeter.NewDriver vm arguments: -Djmeter.home=${workspaceloc:jmeter-2.13} lib目录创建api文件夹 拷贝release版本下的所有jar和目录 拷贝r......

今幕明
2015/03/29
0
1
JMeter学习-002-JMeter环境配置

本节主要介绍 JMeter 本地环境配置(JMeter 版本为 apache-jmeter-2.12),详细配置如下: 一、JDK配置 默认用户本地已经安装且配置好 JDK。若未配置,进行 JDK 环境安装配置。 二、下载JMe...

拎壶冲冲冲
2018/05/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Linux syslog相关函数详解

介绍 syslog是Unix系统的日志系统。可以将日志记录在本地系统中。 一个完整的syslong日志包含如下信息:程序模块 | 严重性 | 时间 | 主机名 | 进程名 | 进程ID | 正文。 syslong相关函数 1....

RongJinhui0
14分钟前
0
0
使用nsenter工具进入Docker容器

查看本机装没有nsenter whereis nsenter或者whatis nsenter 未安装先安装,网上有很多这样的脚本 vi nsenter.sh#!/bin/bashcurl https://www.kernel.org/pub/linux/utils/util-linux/v2....

问题终结者
15分钟前
1
0
MaxCompute安全管理指南-基础篇

背景及目的 方便和辅助MaxCompute的project owner或安全管理员进行project的日常安全运维,保障数据安全。 MaxCompute有安全模型,DataWorks也有安全模型,当通过DataWorks使用MaxCompute,而...

阿里云云栖社区
15分钟前
0
0
Retrofit设计模式源码解析

因为Retrofit做到了很强的解耦,因此就一定需要用到很多设计模式。所以,我觉得,通过阅读Retrofit源码来学习设计模式是再好不过的设计模式学习方法了。 大致看了一圈Retrofit源码,受益匪浅...

亭子happy
15分钟前
3
0
哈夫曼编码

哈夫曼编码的基本思想是以字符的使用频率作为权构建一颗哈夫曼树,然后利用 哈夫曼树对字符进行编码 哈夫曼算法采用的贪心策略是每次从树的集合中取出没有双亲权值最小的两棵作为左右子树, ...

writeademo
17分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部