欢迎光临
我们一直在努力

使用Siege Benchmarking Tool加载测试Web服务器

了解您的Web服务器在压力下可以处理多少流量,这对于规划您的网站或应用程序的未来发展至关重要。 通过使用名为siege的工具,您可以在服务器上运行负载测试,并查看系统在不同情况下的性能。

您可以使用siege来评估传输的数据量,响应时间,事务速率,吞吐量,并发性以及服务器返回响应的次数。 该工具有三种模式,可以操作 – 回归互联网模拟蛮力

重要提示 :只应针对您拥有的服务器或者您拥有明确的测试权限运行Siege 在某些国家/地区,对未经授权的网站进行围攻可能被视为犯罪。

在Linux中安装Siege HTTP负载测试实用程序

Siege是多平台的,可以使用以下命令安装在Ubuntu / DebianCentOS / RHEL发行版下。

要在Debin / Ubuntu下安装Siege ,您可以运行:

$ sudo apt install siege

对于CentOS / RHEL ,您需要安装并启用存储库以安装围攻:

# yum install epel-release# yum install siege

或者,您可以从源构建Siege 为此,您需要安装build-essential和开发包。

$ sudo apt install build-essential       #Ubuntu/Debian# yum groupinstall 'Development Tools'   #CentOS/RHEL

然后,您可以使用wget命令下载Siege并从源代码安装,如图所示。

$ wget http://download.joedog.org/siege/siege-latest.tar.gz$ tar -zxvf siege-latest.tar.gz$ cd siege-*/$ sudo ./configure --prefix=/usr/local --with-ssl=/usr/bin/openssl$ sudo make && make install

在Linux中配置Siege HTTP负载测试实用程序

完成安装后,您可以调整攻城配置文件。 它位于/ etc / siege / siegerc 如果您决定从源代码构建软件包,则必须运行:

$ sudo siege.config

这将生成位于用户主页〜/ .siege / siege.conf中的siege.conf文件

该文件的内容应如下所示。 请注意,我已取消注释日志文件时间指令:

# cat siegerc |egrep -v "^$|#"
样本输出
logfile = $(HOME)/var/log/siege.logverbose = falsecolor = onquiet = falseshow-logfile = truelogging = falsegmethod = HEADparser = truenofollow = ad.doubleclick.netnofollow = pagead2.googlesyndication.comnofollow = ads.pubsqrd.comnofollow = ib.adnxs.comlimit = 255protocol = HTTP/1.1chunked = truecache = falseconnection = closeconcurrent = 25time = 1Mdelay = 0.0internet = falsebenchmark = falseaccept-encoding = gzip, deflateurl-escaping = trueunique = true

使用当前配置, 围攻将在1分钟内模仿25个并发用户。

你现在准备好围困了。

使用Siege Benchmarking Utility测试网站负载

运行围攻很容易,你只需要指定你想要测试的网站,如下所示:

# siege example.com
使用Siege进行Web服务器负载测试

使用Siege进行Web服务器负载测试

如果可用性保持在100%且没有连接失败,那么您的系统运行良好且没有问题。 您还应该关注响应时间。

针对多个网站运行围攻

您可以通过设置siege从文件中读取多个URL来测试它们。 您可以像这样描述/usr/local/etc/urls.txt中的URL:

多个Web服务器负载测试

多个Web服务器负载测试

现在告诉围攻测试文件中的URL,使用-f选项如下:

# siege -f /usr/local/etc/urls.txt

如果要尝试配置文件中描述的设置,也可以使用命令行选项。

  • -C – 指定您自己的配置文件。
  • -q – 抑制围攻的输出。
  • -g – GET,下拉HTTP标头并显示事务。 对调试很有用。
  • -c – 并发用户数,默认为10。
  • -r – 运行测试的次数。
  • -t – 运行测试的时间。 您可以指定S,M或H ex:-time = 10S,持续10秒。
  • -d – 每个请求之前的随机延迟。
  • -b – 请求之间没有延迟。
  • -i – 用户模拟。 用于命中随机网址。
  • -f – 测试指定文件的URL。
  • -l – 日志文件。
  • -H – 添加标头以进行请求。
  • -A – 指定用户代理。
  • -T – 在请求中设置Content-Type。
  • --no-parser – NO PARSER,关闭HTML页面解析器。
  • --no-follow – 不要遵循HTTP重定向。
结论

Siege是一种在高负载下测量系统可靠性的强大工具。 当网站受到胁迫时,Web开发人员可以使用它来测试他们的代码。 您应该始终谨慎运行测试,因为在评估过程中测试的服务器可能无法访问。

赞(0) 打赏
未经允许不得转载:老赵部落 » 使用Siege Benchmarking Tool加载测试Web服务器

评论 抢沙发