TarsBenchmark 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
TarsBenchmark 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议: BSD-3-Clause
开发语言: C/C++ 查看源码 »
操作系统: 跨平台
收录时间: 2020-09-03
提 交 者: 编辑部的故事

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工具编译说明

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

TarsBenchmark 的相关资讯

还没有任何资讯

TarsBenchmark 的相关博客

腾讯开源微服务压测利器,贡献进TARS开源基金会

TarsBenchmark(简称tb)旨在帮助开发和测试同学快速debug线上TARS服务,复现逻辑接口bug,支持灵活修改测试用例,同时也可以...

TarsBenchmark 的相关问答

还没有任何问答,马上提问

评论 (0)

加载中
更多评论
0 评论
3 收藏
分享
返回顶部
顶部