·分享一个关于jmeter TCP取样器设置“行尾(EOL)字节值”的问题,在运行tcpsampler后,如果没有设置eol值发了数据包以后,JMeter不停地报500错误,个人理解因为TCP长连接是不会断开的,我们需要从响应数据来判断并告知TCP取样器这次请求已经获得了数据/响应成功,然后运行其他线程。设置eol值,表示 给inputstream标记一个结束标记,该标记类型int 值为-128-127 ,计算方法为一个字节的十进制值(服务端返回16进制报文的最后一个字节),比如如果标记位16进制是7e 二进制是 0111 1110 对应的十进制是126,如果标记为范围超过127,计算方式步骤如下
·1、计算标记位的二进制,例如标记位16进制是FB对应的十进制是251已经超过127,二进制是1111 1011
·2、计算该二进制的补码1111 1011的补码为1000 0101(负数的补码为符号位不变,数据位取反后加1)
·3、计算步骤2中的数值为-5
·也可以将251拆分成251=127+124
·127源码:0111 1111 ,124源码:0111 1100
·127补码:0111 1111 ,124补码:0111 1100(正数反码、补码是其本身)
·补码相加:1111 1011,反码为:1111 1010(负数补码转反码,符号不变数据位减1),源码为:1000 0101(负数反码转源码,符号不变,数据位取反)最终得到值为-5
jmeter TCP取样器发送后一直错误500
最新推荐文章于 2024-05-09 03:10:48 发布