用「Web压测」关键词检索,能找到好多进行压测的工具,好比ab、Http_load、Webbench、Siege这些,不过今天并非要对这些工具作对比,毕竟咱们只是想获得一个结果。本文主要介绍Siege,由于Siege是上面四者中,在Mac上安装和使用最便利的,因此果断就是它了!服务器
在压测开始前,你须要确保你的open files
足够大,不然会报TOO MANY FILES OPEN
错误,能够经过ulimit -a
查看,以下图:并发
使用ulimit -n 10000
能够修改该值。不过这种修改并非永久的,关闭终端会话,又会恢复回来。高并发
brew install siege
siege -c 1000 -t 5s URL siege -c 1000 -t 5s -f URL_File_Name
上面是siege
的两种使用方法,第一种是对指定站点进行压测,第二种是对文件中包含的若干URL进行批量测试。工具
-c
并发数测试
-t
压力测试时间,能够在时间后加单位,具体查帮助,上面表示的是压测时间持续5秒code
-r
重复次数,与-t
表达方式不一样,但含义相同,设一个便可it
-f
包含URL的文本名字io
-b
BENCHMARK模式,请求之间无需延迟class
Transactions 总测试数test
Availability 成功率
Elapsed time 总用时
Data transferred 总共传输数据
Response time 响应耗时
Transaction rate 每秒处理请求数
Throughput 平均每秒传输数据量
Concurrency 实际最高并发
Successful transactions 成功处理次数
Failed transactions 失败处理请求数
Longest transaction 传输所花最长时间
Shortest transaction 传输所花最短期
最后说明下 Siege 能支持GET/POST两种请求,不过格式略有区别,而且上面罗列的只是Siege的部分参数,Siege还有不少其它参数,请一并参考手册。