小而美:Web服务器负载测试工具Siege

译文
网络
您了解Siege吗?本文为您介绍Web服务器负载测试工具Siege,希望对您有所帮助。

您了解Siege吗?本文为您介绍Web服务器负载测试工具Siege,希望对您有所帮助。

 [[140165]]

Siege简介

Siege是一款基准测试和负载测试藈,可用于测量网站服务器在面临巨大压力下的性能。Siege可以执行下列测试:

•传输的数据量。

•服务器的响应时间。

•传输速率。

•吞吐量。

•并发性。

•程序返回OK的次数。

Siege提供了三种操作模式:

•递归。

•互联网模拟。

•蛮力。

注意:本文仅针对Debian和Ubuntu服务器。

1: 在安装任何新程序之前,先更新你的服务器:

sudo apt-get update && sudo apt-get upgrade --show-upgraded

2: 从Siege的官方网站下载***版本的Siege:

wget http://download.joedog.org/siege/siege-3.1.0.tar.gz

3: 对文件进行解压缩:

tar -zxvf siege-latest.tar.gz

4: 进入到Siege目录:

cd siege-*/

5: 在配置之前,要是GNU编译器库(gcc)还没有安装,立即安装它:

sudo apt-get install build-essential

6: 配置和完成安装过程:

./configure

make

sudo make install

7: 生成配置文件:

siege.config

8: 之后,打开位于主目录下的.siegerc文件。

9: 默认情况下,Siege配置建议在1分钟的时间段内支持25个并发用户。为你的日志文件选择一个位置。去掉下面所示的变量前面的注释;另外你想要其他任何的注释设置,别忘了去掉井字号(#):

#

# 变量声明。你可以在此设置变量

# 用于下列指令。例子:

# PROXY = proxy.joedog.org

# ${}或$()里面的参考变量,例子:

# proxy-host = ${PROXY}

# 你还可以引用ENVIRONMENT变量,

# 不用实际声明变量,例子:

logfile = $(HOME)/siege.log

#

# 模拟并发用户的默认数量

# ex: concurrent = 25

#

concurrent = 25

#

# siege的默认持续时间。右边变量有一个修饰符

# 指定了时间单位,H=小时,M=分钟和S=秒钟。

# 如果修饰符未加以指定,那么假设时间单位是分钟。

# ex: time = 50M

#

time = 1M

如何运行Siege?

终于,现在你可以随时运行Siege了!

想运行Siege,输入下面这个命令,把www.example.com换成你的IP地址或域名。

siege www.example.com

输出结果

** SIEGE 2.70

** Preparing 25 concurrent users for battle.

The server is now under siege...

Lifting the server siege... done.

Transactions: 2913 hits

Availability: 100.00 %

Elapsed time: 59.51 secs

Data transferred: 0.41 MB

Response time: 0.00 secs

Transaction rate: 48.95 trans/sec

Throughput: 0.01 MB/sec

Concurrency: 0.04

Successful transactions: 2913

Failed transactions: 0

Longest transaction: 0.01

Shortest transaction: 0.00

FILE: /var/log/siege.log

You can disable this annoying message by editing

the .siegerc file in your home directory; change

the directive 'show-logfile' to false.

Siege的命令和进一步配置

如果可用性仍保持100%,也没有失效连接,那么这表明你没有遇到任何问题。

URL文件创建

如果你想要测试网站数量,可以配置该工具,从urls.txt读取。

1: 打开位于/usr/local/etc/urls.txt处的urls.txt文件。为该文件添加域名、页面或IP地址。

# 需要siege的URLS文件

# --

# 用下列任何一种格式对URL条目进行格式化:

# http://www.whoohoo.com/index.html

# http://www/index.html

# www/index.html

# http://www.whoohoo.com/cgi-bin/howto/display.cgi?1013

# 为需要它的页面使用POST指令:

# http://www.whoohoo.com/cgi-bin/haha.cgi POST ha=1&ho=2

# 或者POST来自文件的内容:

# http://www.whoohoo.com/melvin.jsp POST

# http://www.whoohoo.com/melvin.jsp POST <./haha

# 你还可以设置和引用该文件里面的变量,

# 想了解更多信息,参阅urls_txt

# -------------------------------------------------------

www.example.com

www.example.org

321.54.13.98

2: 想使用上述文件来运行Siege,输入下面这个命令siege。

siege

3: 想换个文件,输入下面这个命令。

siege -f your/file/path.txt

想了解关于Siege及其命令的更多信息,请访问官方网站:https://www.joedog.org/siege-home/。

原文标题:Web Server Load Testing Tool: Siege 

责任编辑:何妍 来源: 51CTO.com
相关推荐

2016-09-14 11:09:06

Web工具运维

2019-11-22 09:38:50

工具代码开发

2009-10-09 16:43:36

服务器测试工具

2009-10-10 13:21:02

服务器测试工具

2018-01-16 11:20:08

2011-07-13 10:07:28

服务器基准测试

2009-10-10 17:32:44

服务器测试工具

2018-01-23 15:02:42

负载测试工具Gatling

2010-06-29 11:21:58

Web服务器

2011-11-22 21:26:59

pfSense配置Web服务器负载均衡

2010-11-19 12:53:53

梭子鱼负载均衡

2010-05-06 10:08:21

2009-10-10 09:06:35

服务器测试方案

2010-09-15 14:50:57

集群负载均衡Tomcat

2011-04-07 13:53:25

Web工具

2009-08-13 12:54:29

2009-04-14 10:11:29

.NETWeb测试工具

2018-03-14 11:13:35

Web服务器Nginx

2011-05-31 18:09:05

动态测试

2009-06-26 10:22:58

JSF测试
点赞
收藏

51CTO技术栈公众号