|
|
51CTO旗下网站
|
|
移动端

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

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

作者:布加迪编译来源:51CTO.com|2015-07-14 09:11

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

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

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

【编辑推荐】

  1. 改善Windows服务器和客户机的网络性能_网络·安全技术周刊第212期
  2. 中国参与互联网下一代根服务器建设
  3. 把你的跳跃服务器放到云端,以节省带宽
  4. 如何在ubuntu 15.04服务器上配置SNMPv3?
  5. 轻松分析HTTP流量:在Ubuntu15.04上安装和配置Webalizer
【责任编辑:何妍 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

热门职位+更多

读 书 +更多

Head First 设计模式(中文版)

本书共有14章,每章都介绍了几个设计模式,完整地涵盖了四人组版本全部23个设计模式。前言先介绍这本书的用法;第1章到第11章陆续介绍的设...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊