5. 性能测试工具--Service-benchmark

转至元数据结尾
转至元数据起始

准备工作:

环境:看一下测试环境,主要看文件打开数是否限制: ulimit -a , 看 “open files” 的数量是否够

  • 文件打开数设置方法:设置完成以后重新登录
修改/etc/security/limits.conf 添加如下一行:

* - nofile 301024

修改/etc/pam.d/login添加如下一行,根据操作系统的32位、64位分别选择一行

session required /lib/security/pam_limits.so     #32bit
session required /lib64/security/pam_limits.so   #64bit
  • 大量状态为TIME-WAIT的TCP连接、以及本地端口不够的修改方法
编辑/etc/sysctl.conf文件,增加下面几行:

net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.ip_local_port_range = 1024     65000
net.ipv4.netfilter.ip_conntrack_max = 1048576

再执行以下命令,让修改结果立即生效:
/sbin/sysctl -p

了解测试工具

性能测试工具下载: [^venus-benchmark-3.2.16-distribution.zip]

解压,进入目录,执行 bin/benchmark --help,根据提示填写相应的参数,

展示如下信息:

参数解说:

参数名 属性值 描述说明
d   可以不填,只要带了这个参数,则表示输出交互的数据包信息
P 端口号(必填) 远程服务器端口号
h 主机名或者Ip地址(必填) 远程服务器ip地址或者主机名
c 数字(必填) 并发连接数,根据业务具体来测试,单台机器一般不要超过50000
n 数字(必填) 总共测试多少次请求
f 请求文件(必填) 具体请看例子 query/helloService-getHello.xml
s 序列化方式(默认:0) 序列化方式:0为json,1为bson
u 用户名 如果venus Server 设置了用户名密码认证方式,需要填写该参数
p 密码 如果venus Server 设置了用户名密码认证方式,需要填写该参数
t 超时时间(单位:秒) 如果venus在这个时间内无响应则会多一个超时
C 请求环境文件(可选) 具体请看例子 query/helloService-getHello.xml,也可以参阅 amoeba中的benchmark(http://docs.hexnova.com/amoeba/ch06s04.html

实战例子

Enter labels to add to this page:
Please wait 
查找标签? 在此录入。