TarsBenchmark无码压测工具

联合创作 · 2023-10-01

TarsBenchmark(tb)是专门为tars服务量身订做的无码压测工具,具备以下特性:

  • 网络高性能:8核机器TPS支持超过20W/S;
  • 通讯扩展性:网络层支持TCP/UDP两种协议方式;
  • 协议扩展性:应用层支持Http,Tars服务压测, 也保持对第三方协议开放;
  • 完善的实时统计与监控支持。提供周期内的请求数/TPS/耗时/成功率分布。

TarsBenchmark工具采用多进程方式设计,主进程负责资源调度和外显,压测进程负责网络收发和统计,网络层可以灵活选择TCP or UDP; 采用协议代理工厂模式管理各类service协议,默认支持http/tars协议的压测,支持协议自动发现; 主进程和压测进程之间控制信息通过信号方式交互,数据信息通过无锁共享内存队列交互,以达到最低的资源消耗,主进程会周期地搜集各压测进程的网络统计信息,经过简单汇总之后输出到控制台。

使用说明

简单示意

./tb -c 600 -s 6000 -D 192.168.31.1 -P 10505 -p tars -S tars.DemoServer.DemoObj -M test -C test.txt

参数说明

  -h                   帮助信息
  -c                   连接数量
  -D                   压测服务器IP,多个IP用';'区隔
  -P                   网络传输端口
  -p                   接口通信协议(tars|http)
  -t(可选)             单个请求超时时间,默认3秒
  -T(可选)             网络层协议,默认tcp
  -I(可选)             压测持续时间(单位秒),默认1H
  -i(可选)             控制台打印周期时间(单位秒),默认10秒
  -s(可选)             最大速率限制,为空或0表示自动适配服务最佳速率
  -n(可选)             最大压测进程限制,默认跟CPU核心数

详细使用参考tb工具编译说明

浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报