当前位置: 首页 > news >正文

Linux上安装部署轻量级高性能压力测试工具siege实操教程与常用示例

一、siege压力测试工具简介

Siege Manualhttps://www.joedog.org/siege-manual/JoeDog/siege: Siege is an http load tester and benchmarking utilityhttps://github.com/JoeDog/siege?tab=readme-ov-file

        siege是一个开源的、支持对单个或多个URL进行压力测试的实用工具;它支持自定义用户数量和访问次数进行模拟并发访问;且支持HTTP/HTTPS 1.0和1.1协议、GET和POST指令、cookie、身份认证和日志记录。它会将记录测试的持续时间和每个测试的持续时间,且会在测试完成后形成报告【事务数量、经过的时间、传输的字节数、响应时间、事务速率、并发数和服务器响应的OK次数】。

        Siege 有三种模式【回归】【互联网模拟】和【暴力破解】;它可以从配置文件中读取大量 URL,并以增量(回归)或随机(互联网模拟)的方式运行它们。或者,用户可以简单地在命令行上使用运行时配置敲击单个 URL(暴力破解)。

        siege主要是用来对 Web 服务器进行压力测试和基准测试;使用它来检测web服务器或API的性能和效率;提供了在受控时间段内访问web服务器API的模拟命中次数。

        Siege 已在 AIX 4.x、GNU/Linux 2.2.x、HP-UX 11.x 和 Solaris 2.x 上编译和运行;Siege 依赖于以 UNIX 为中心的功能,因此,它不能直接在 Microsoft Windows 上运行,但你可以在 cygwin 下运行它。

二、Linux上安装部署压力测试工具siege

 2.1、在Linux上安装部署siege

#安装部署压力测试工具Siege的实操流程#0-安装源码编译所需的常用依赖包
yum install -y gcc gcc-c++ wget popt-devel openssl openssl-devel#1-下载压力测试工具Siege源码包并解压(指定版本的源码包和最新版本的源码包只用二选一即可)
#下载指定版本的siege源码包
wget https://download.joedog.org/siege/siege-4.1.7.tar.gz -c 0 -P /data
#下载最新版本的siege源码包
wget https://download.joedog.org/siege/siege-latest.tar.gz -c 0 -P /data
cd /data
tar -zxvf siege-4.1.7.tar.gz#2-检查当前系统是否满足Siege的编译环境,且指定编译后的路径
cd /data/siege-4.1.7/
./configure --prefix=/usr/local/siege --with-ssl=/usr/local/openssl#3-编译安装Siege
make
make install#4-将压力测试工具Siege设置为全局可用
ln -s /usr/local/siege/bin/siege /usr/bin/siege#5-查看压力测试工具Siege的版本
siege -V#5-查看压力测试工具Siege的帮助
siege -h

 2.2、siege的参数和报告内容说明

压力测试工具Siege的参数说明
序号压力测试工具Siege常用参数说明
1

-V

显示版本号
2

-h

显示帮助信息
3

-C

显示当前配置信息
4-v在屏幕上打印通知
5-q安静模式,关闭详细信息抑制输出到屏幕上
6

-g

获取http头信息(适合应用程序调试)
1

-p

显示整个页面内容
2

-c NUM

并发用户数量(默认10个)
3

-r NUM

运行的次数
4-t NUMm

持续测试的时间(秒(如10S),分钟(10M),小时(10H))

【1H,表示一小时测试】

1

-d NUM

时间延迟,每次请求前的随机延迟
2-b基准测试,请求之间没有延迟(即:0延迟)
3-i互联网用户模拟,随机点击网址。
4-f选择指定的URL文件
5-R指定siegerc文件
6

-l

--log

运行结束,将统计数据保存到日志文件中siege .log,

默认位于【/usr/local/var/siege .log】中,也可在.siegerc中自定义

7-m

用字符串标记日志文件。

在0.001的与指定的数值区间不计入统计

1-H给请求添加头信息,支持添加多个请求头信息
2-A给请求设置User-Agent
3-T给请求设置Content-Type
4-jJSON 输出,将最终统计信息以 JSON 格式打印到标准输出
压力测试工具结果参数说明
序号压力测试工具Siege结果说明说明
1Transactions命中的总次数
2Availability命中率
3Elapsed time整个压测花费的总时间(即:从第一个开始到最后一个结束的时间总合)
4Data transferred整个压测数据传输的总大小
5Response time响应时间(即:响应每个模拟用户请求所花费的平均时间)
6Transaction rate事务速率(即:服务器每秒能够处理的平均事务数量;事务除以经过的时间)
7Throughput吞吐量(从服务器到所有模拟用户每秒传输的平均字节数)
8Concurrency并发(同时连接的平均数量)
9Successful transactions成功事务次数
10Failed transactions失败事务次数
11Longest transaction最长事务时间
12Shortest transaction最短事务时间

三、压力测试工具siege的常用示例

#压力测试工具Siege的常用示例
#1-实现200个并发对【http://192.168.1.226】发送1000次请求示例
siege -c 200 -r 1000 http://192.168.1.226#2-实现200个并发对【urls.txt】文件中的所有网址发送1000次请求示例
siege -c 200 -r 1000 -f urls.txt#3-实现200个并发对【urls.txt】文件中的随机选取的网址发送1000次请求示例
siege -c 200 -r 1000 -f urls.txt -i#4-实现0延迟200个并发对【urls.txt】文件中的随机选取的网址发送1000次请求示例
siege -c 200 -r 1000 -f urls.txt -i -b#5-发送post请求,在网址后添加POST地址,且POST后这是参数
siege -c 200 -r 1000 http://www.baidu.com/ POST k1=v1&k2=v2#6-实现200个并发对【http://192.168.1.226】发送1000次请求【指定请求头】
siege -c 200 -r 1000 -p --header="Authorization: Bearer f5c53ace-6d98-2a52-aeec-65eb07a30920" --header="sg: abc123456" http://192.168.1.226#7-实现200个并发对【http://192.168.1.226】网站发送1000次请求【以application/json方式请求】
siege -c 200 -r 100 "http://192.168.1.226:8086/blog/article/details PUT <./1.json "#8-基准测试示例
#8.1-实现100个并发线程(连接)测试基准测试【http://192.168.1.226】并持续120秒
siege -c 100 -t 120s http://192.168.1.226#8.2-实现不限制线程(连接)基准测试【http://192.168.1.226】并持续120秒
siege -b -t 120s http://192.168.1.226#8.3-实现100个并发线程(连接)测试基准测试【http://192.168.1.226】并持续120秒的日志输出到当前目录的log.txt文件中
siege -c 100 -t 120s http://192.168.1.226 > log.txt

http://www.dtcms.com/a/521840.html

相关文章:

  • CS144 学习导航
  • 南昌网站建设公司排行榜前十【转】网页 网站 html如何实现"关闭窗口"代码大全
  • 漯河网站建设费用做外贸比较好的网站
  • Linux修炼:基础IO(一)
  • 中山市网站制作app 推广
  • 免费制图网站做国外网站的公证要多少钱
  • leetcode 3461 判断操作后字符串中的数字是否相等I
  • 机器学习(8)梯度下降的实现与过拟合问题
  • h5游戏免费下载:维京战争
  • 门户网站建设投标书小程序软件定制开发
  • 外贸网站建设价格外贸网站推广公司最大
  • 【北京迅为】iTOP-4412精英版使用手册-第六十五章 Linux-定时器
  • 网页设计网站怎么做网站制作文案
  • rocky 9.5系统安装zabbix监控实现邮件告警
  • 梅河口网站建设张艺兴粉丝做的网站
  • 做杂志的网站有哪些哪个页面设计培训好
  • 国际贸易网站有哪些电影网站的建设目标
  • cuda13.0 torch2.9 python3.12 安装flash-attn window版的哪里有
  • 外贸公司网站制作公司网站的字体颜色
  • 免费源代码网站瑞安做网站
  • 专门做礼物的网站广州红盾信息门户网站
  • 单片机的开发——无人机篇(未完待续,有时间写)
  • 做网店哪个网站好中小互联网企业有哪些
  • 广州学建设网站啥都能看的浏览器
  • 丰浩网站建设中心软件开发合同范本免费
  • wordpress咋建站附近卖建筑模板市场
  • 性男女做视频观看网站响应式网站手机端尺寸
  • SpringBoot-Web开发之数据响应
  • 珠海专业网站建设费用360建筑官网
  • Linux 中的 DNS 工作原理(一):​​从 getaddrinfo 到 resolv.conf