proxyio性能测试工具
八月 13, 2014
proxyio
No Comments »
测试工具位于源码目录 perf/ 下,可见:https://github.com/proxyio/xio/tree/master/perf
分别是吞吐量测试和时延测试:
- 吞吐量测试:thr_sender + thr_recver
- 时延测试:lat_sender + lat_recver
吞吐量测试
thr_sender不停的发送消息,thr_recver接受消息,记录消息大小,整个过程的耗时,最好得到的结果类似如下:
message size: 100000000 [B]
throughput: 90497 [msg/s]
throughput: 707.013 [Mb/s]
thr_sender用法如下:
usage: thr_sender <connect-to> <msg-size> <msg-count>
其中:
- connect-to 表示消息接收端的地址
- msg-size 表示发送消息的大小(不包括协议的header,仅指用户消息的长度)
- msg-count 表示消息数量
thr_recver用法如下:
usage: thr_recver <bind-to> <msg-count>
其中:
- bind-to 表示监听一个socket地址
- msg-count 表示消息的数量
时延测试
在pingpong模式下,测试每个消息来回的传输时间,测试过程如下,记录时间戳,发送消息,接受响应,记录时间戳,计算时延 rtt / 2
lat_sender用法如下:
usage: lat_sender <connect-to> <msg-size> <roundtrips>
其中:
- connect-to 表示消息接收端的地址
- msg-size 表示发送消息的大小(不包括协议的header,仅指用户消息的长度)
- roundtrips 表示消息来回的次数
lat_recver用法如下:
usage: lat_recver <bind-to> <msg-count>
其中:
- bind-to 表示监听一个socket地址
- msg-count 表示消息的数量
输出结果类似如下:
message size: 1000 [B]
roundtrip count: 100000
average latency: 67.626 [us]