利器: 用Siege做Web服务器压测

用「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秒
  • -r 重复次数,与-t表达方式不同,但含义相同,设一个即可
  • -f 包含URL的文本名字
  • -b BENCHMARK模式,请求之间无需延迟

输出结果

  • Transactions 总测试数
  • Availability 成功率
  • Elapsed time 总用时
  • Data transferred 总共传输数据
  • Response time 响应耗时
  • Transaction rate 每秒处理请求数
  • Throughput 平均每秒传输数据量
  • Concurrency 实际最高并发
  • Successful transactions 成功处理次数
  • Failed transactions 失败处理请求数
  • Longest transaction 传输所花最长时间
  • Shortest transaction 传输所花最短时间

最后说明下 Siege 能支持GET/POST两种请求,不过格式略有区别,并且上面罗列的只是Siege的部分参数,Siege还有很多其它参数,请一并参考手册。

时间: 2024-12-08 18:53:36

利器: 用Siege做Web服务器压测的相关文章

web服务器压测工具siege、ab

web服务器压测工具也挺多,这里只介绍我用过的这两种--siege(for linux).ab(for windows). 一.siege 1.简介: Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力.可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行.siege可以从您选择的预置列表中请求随机的URL.所以siege可用于仿真用户请求负载,而ab则不能.但不要使用siege来执行最高性能基准调校测试

入门篇:Ubuntu用apache做web服务器

一.安装Apache Ubuntu提供了3个apache2的软件包,它们分别是apache2-mpm-worker.apache2-mpm-prefork.apache2-mpm-event.如果你在安装Ubuntu操作系统<入门篇:ubuntu server 安装教程>的时候你选择安装了LAMP包的话,那么安装的是apache2-mpm-prefork.如果你没有选择安装LAMP包,安装完系统之后,执行下面的命令安装apache2这个软件包时,安装的是apache2-mpm-worker:s

Nginx是什么,有什么优点?为什么选择Nginx做web服务器软件?(经典经典)

1.基础知识 代理服务器:    一般是指局域网内部的机器通过代理服务器发送请求到互联网上的服务器,代理服务器一般作用在客户端.应用比如:GoAgent,FQ神器.    一个完整的代理请求过程为:客户端首先与代理服务器创建连接,接着根据代理服务器所使用的代理协议,请求对目标服务器创建连接.或者获得目标服务器的指定资源. Web代理(proxy)服务器是网络的中间实体. 代理位于Web客户端和Web服务器之间,扮演“中间人”的角色.HTTP的代理服务器即是Web服务器又是Web客户端.    代

Nodejs做web服务器的一个简单逻辑和实现

本文写了自己对"Nodejs做web服务器的一个简单逻辑和实现",如果不太合理,或者了解这部分的大神,欢迎拍死.哈哈,新手. 昨天开始学习Nodejs,w3cschool看了一遍.感觉其上的内容,一上来就开始介绍Nodejs的模块.看来后来,连如何"从零创建一个nodejs版的web服务器"都没能明白.可能是自己太过肤浅,或者,陷到了WAMP的思维里,不能自拔吧.后来在nodejs中文社区发了个帖子.感觉自己算是明白了点儿.写出来,希望和大家一起学习,同时也希望得到

服务器压测与监控工具

工欲善其事,必先利其器:总是要在服务器上面运行各种各样的应用,可以使用服务器监控工具查看自己的服务器状态如何:如果需要了解下服务器的性能如何,需要压测工具: 查看服务器CPU核的使用率:top 查看服务器内存使用情况: free -m 查看服务器磁盘IO使用情况:iotop 查看服务器磁盘使用情况:df -h 查看服务器网络IO使用情况:iftop 升级版top指令: htop 压测 对服务器的不同种类的资源进行压测的工具较多:只写自己会使用的: CPU压力测试: # 使用lookbusy ./

ab与jmter 服务器压测对比

引言: 互联网服务压测是非常重要的评价方法,ab,webbench,jmeter等都是业界流行的测试工具,ab和webbench作为shell模式下轻量级的测试工具,jmeter则作为有GUI界面的更高级测试工具,各有特点,ab比webbench功能更多一些,所以这里选择ab和jmeter来做一个对比. [测试环境的安装] [ab] ab就是Apache Benchmark的缩写,顾名思义它是Apache组织开发的一款web压力测试工具,优点是使用方便,统计功能强大. ab作为一款非常流行的压测

Linux服务器压测/拷机软件收集

最近公司采购了一批服务器,于是收集了一些拷机软件来压测服务器硬件性能.硬件的稳定相对来说比较重要,7x24小时无间断运行,主要看三个硬件:CPU.内存.硬盘. 下面是收集的一些教程,可能网址已经失效了,但可以根据软件名去查找一些使用教程. 专业的测试软件为LTP,但功能太复杂,没看懂.参考:https://github.com/linux-test-project/ltp 一.压测软件: stresslinux super pi prime mprime nbench cpuburn gamut

树莓派做web服务器(nginx、Apache)

一想到Linux Web服务器,我们首先想到的是: Apache + MySql + Php. Apache:是世界使用排名第一的Web服务器软件. 可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件. MySQL:是一个关系型数据库管理系统,由瑞典MySQL AB公司开发.是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(关系数据库管理系统)应用软件之一. PHP:(外文名: Hypertext Preproces

使用Arduino UART-WiFi模块做web服务器

一.硬件准备 1.选择硬件,主要有2种: 一种是官方推荐的Arduino WiFi Shield(比较贵,大概要300~400块 淘宝网 :但是资料齐全): 一种是UART-WiFi模块,不仅支持Arduino,而且支持所有串口的单片机都可以和其模块通信(大概100块左右,淘宝网,资料较少). 最后选择了UART-WIFI模块,也走了条坎坷的路,也许到了不少东东. 2.   UART-WIFI模块介绍 图片 接口   双排(2 x 4)插针式接口   支持波特率范围:1200~115200bps