一, siege 介绍
Siege 是一个压力测试和评测工具, 设计用于 web 开发这评估应用在压力下的承受能力: 可以根据配置对一个 Web 站点进行多用户的并发访问, 记录每个用户所有请求过程的相应时间, 并在一定数量的并发访问下重复进行.
Siege 是一个多线程 http 负载测试和基准测试工具.
Siege: 这是 Linux 系统下的一个测试工具, 完全使用 C 语言实现, 可以对 HTTP 和 FTP 服务器进行负载和性能测试. 通过使用 Siege 提供的功能, 可以很容易的制定测试计划: 包括规定使用并发用户数, 重复数量, 从而可以模拟在服务器, 网络或者其它对象上附加负载以测试他们提供服务的受压能力, 方便的测试服务器的性能. 最后, 利用 Siege 提供的测试结果来分析性能指标或者分析他们提供的服务在不同负载条件下的性能情况, 分析测试结果, 找出影响系统性能的瓶颈.
二, siege 安装
本次环境基于 Ubuntu 系统 root 用户
使用 apt-get siege 下载安装 siege.
使用 siege -h 检测是否安装成功 (出现如图界面则安装成功)
三, siege 的简单使用
-R: 指定用特定的 siege 配置文件来运行
-c: 模拟有N个用户在并发访问 (ps: 如果 Web 服务器为 apache 的话, 请不要将并发连接数设置超过 200)
-r: 重复测试运行N次
-i: 随机访问 - f 指定的 url.txt 中的 url 列表项, 以此模拟真实的访问情况 (随机性)
-b: 进行压力测试, 不进行延时
-A: 指定访问的 user-agent
-f: 任务的 URL 列表
...
实战:
目标 url:http://192.168.1.126/ecshop/
50 个用户在并发访问
重复运行 2 次
结果分析:
Transactions: 完成了总的点击数
Availability: 事物的成功率
Elapsed time: 测试使用时间
Data transferred: 每个用户的传输数据量
Response time: 平均响应时间
Transaction rate: 服务器每秒处理事务的平均数
Throughput: 吞吐量
Concurrency: 实际最高并发连接数
Successful transactions: 成功事物数
Failed transactions: 失败事物数
Longest transaction: 最长的事务处理时间
Shortest transaction: 最短的事务处理时间
来源: https://www.cnblogs.com/sanshiyi/p/9692616.html