ysab 压测工具

引言

最近需要测试一个服务的性能,要求是重放线上真实请求(请求参数不一致)。
比较常用的就是Apache的ab压测工具,如果想发送不同参数的请求需用脚本写for循环。
最后用Golang实现了类似于ab的压测工具ysab,支持一次压测发送不同url、参数的功能。

项目地址

Ysab

功能介绍

  • 发送单条url
  • 发送多条url
  • 支持GET、POST、PUT、DELETE

获取和安装

部分例子

结果展示

说明:http://10.10.10.10:8080/test是基于gin写的一个api,简单的返回hello world

[yunson ~]# ysab -n 900 -r 30 -u http://10.10.10.10:8080/test

Summary:
  Complete requests:    27000
  Failed requests:  0
  Total data size(ContentLength):   324000
  Data size/request:    12
  Max use time:     257 ms
  Min use time:     10 ms
  Average use time: 36.074 ms
  Requests/sec:     13500

QPS time histogram (timestamp: requests):
  1551254255:       14198
  1551254256:       12802


Use Time Percent:
  <=50ms:         87.74%
  <=100ms:        99.31%
  <=300ms:        100.00%
  <=500ms:        100.00%
  >500ms:         0.00%

Code Time histogram (code: requests):
  200:      27000


Time detail (ms)
  item      min     mean        max
  dns       0       0       0
  conn      0       1.088       51
  wait      10      33.82       257
  resp      0       0.596       28

其他说明

  • 关于命令urlsfile
推荐尝试使用 "-urlsfile" 命令,这样你可以发送不同url在同一压测中。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 个人学习批处理的初衷来源于实际工作;在某个迭代版本有个BS(安卓手游模拟器)大需求,从而在测试过程中就重复涉及到...
    Luckykailiu阅读 4,809评论 0 11
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,941评论 0 5
  • 为君暴走风雨稠,醒来沧海桑田宿。 幼年难知异乡人,华发穷念老山谷。 越洋跨海新征程,离土出村旧摆渡。 瑶池仙园坐彻...
    雨意生香阅读 496评论 34 26
  • 1、主题是什么? 我不能咳嗽 2、事件是什么? 晚上开始咳嗽了,不是从嗓子而是从胸部发出的声音,很深,肺里的能量往...
    糖果屋1968阅读 829评论 4 7
  • 来到义乌的第二天,就是我的生日,那一天,我根本都没有想起这是我的生日(因为我每天都从不来看日历的),在下午五点钟,...
    写作君a梓安阅读 401评论 0 0