以下是小编为大家收集的Nginx应用案例:压力测试WEB服务器(共含5篇),希望对大家有所帮助。同时,但愿您也能像本文投稿人“摇摆摇摆”一样,积极向本站投稿分享好文章。
在运维工作中,压力测试是一项非常重要的工作,比如在一个网站上线之前,能承受多大访问量、在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验。
但是,在压力测试中存在一个共性,那就是压力测试的结果与实际负载结果不会完全相同,就算压力测试工作做的再好,也不能保证100%和线上性能指标相 同。面对这些问题,我们只能尽量去想方设法去模拟。所以,压力测试非常有必要,有了这些数据,我们就能对自己做维护的平台做到心中有数。
目前较为常见的网站压力测试工具有webbench、ab(apache bench)、tcpcopy、loadrunner
软件名称简介优缺点
webbench由Lionbridge公司开发,主要测试每秒钟请求数和每秒钟数据传输量,同时支持静态、动态、SSL
部署简单,静动态均可测试。适用于小型网站压力测试(单例最多可模拟3万并发)
ab(apache bench)Apache自带的压力测试工具,主要功能用于测试网站每秒钟处理请求个数
多见用于静态压力测试,功能较弱,非专业压力测试工具
tcpcopy基于底层应用请求复制,可转发各种在线请求到测试服务器,具有分布式压力测试功能,所测试数据与实际生产数据较为接近后起之秀,主要用于中大型压力测试,所有基于 tcp的packets均可测试
loadrunner压力测试界的泰斗,可以创建虚拟用户,可以模拟用户真实访问流程从而录制成脚本,其测试结果也最为逼真模拟最为逼真,并可进行独立的单元测试,但是部署配置较为复杂,需要专业人员才可以。
下面,笔者就以webbench为例,来讲解一下网站在上线之前压力测试是如何做的。
安装webbench
#wget home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz
#tar zxvf webbench-1.5.tar.gz
#cd webbench-1.5
#make && make install
进行压力测试
并发200时
# webbench -c 200 -t 60 blog.luwenju.com/index.php
参数解释:-c为并发数,-t为时间(秒)
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar -, GPL Open Source Software.
Benchmarking: GET blog.luwenju.com/index.php
200 clients, running 60 sec.
Speed=1454 pages/min, 2153340 bytes/sec.
Requests: 1454 susceed, 0 failed.
当并发200时,网站访问速度正常
并发800时
#webbench -c 800 -t 60 blog.luwenju.com/index.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET blog.luwenju.com/index.php
800 clients, running 60 sec.
Speed=1194 pages/min, 2057881 bytes/sec.
Requests: 1185 susceed, 9 failed.
当并发连接为800时,网站访问速度稍慢
并发1600时
#webbench -c 1600 -t 60 blog.luwenju.com/index.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET blog.luwenju.com/index.php
1600 clients, running 60 sec.
Speed=1256 pages/min, 1983506 bytes/sec.
Requests: 1183 susceed, 73 failed.
当并发连接为1600时,网站访问速度便非常慢了
并发时
#webbench -c 2000 -t 60 blog.luwenju.com/index.php
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET blog.luwenju.com/index.php
2000 clients, running 60 sec.
Speed=2154 pages/min, 1968292 bytes/sec.
Requests: 2076 susceed, 78 failed.
当并发2000时,网站便出现“502 Bad Gateway”,由此可见web服务器已无法再处理用户访问请求
总结:
1、压力测试工作应该放到产品上线之前,而不是上线以后
2、测试时尽量跨公网进行,而不是内网
3、测试时并发应当由小逐渐加大,比如并发100时观察一下网站负载是多少、打开是否流程,并发200时又是多少、网站打开缓慢时并发是多少、网站打不开时并发又是多少
4、应尽量进行单元测试,如B2C网站可以着重测试购物车、推广页面等,因为这些页面占整个网站访问量比重较大
webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便,
1、适用系统:Linux
2、编译安装:
1. wget linux/webbench/webbench-1.5.tar.gz“>blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz
2. tar zxvf webbench-1.5.tar.gz
3. cd webbench-1.5
4. make && make install
3、使用:
1. webbench -c 3000 -t 30 192.168.114.155/phptest.php
参数说明:-c表示并发数,-t表示持续时间(秒)
4、测试结果示例:
Webbench – Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET
500 clients, running 30 sec.
Speed=3230 pages/min, 11614212 bytes/sec.
Requests: 1615 susceed, 0 failed.
WebBench是有名的网站压力测试工具,由Lionbridge公司开发,最多可以模拟3万个并发连接去测试网站的负载能力,
Webbech能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。webBech的标准测试可以向我们展示服务器的 两项 内容:每秒钟相应请求数和每秒钟传输数据量。webbench不但能具有便准静态页面的测试能力,还能对动态页面(ASP,PHP,JAVA,CGI)进 行测试的能力。还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试。
3.1 编译安装:
1.下载webbench文件
直接网上下载webbench文件或wget命令下载:
wget home.tiscali.cz/cz210552/distfiles/webbench-1.5.tar.gz
2.解压要编译的文件
tarzxvf webbench-1.5.tar.gz
3.编译源代码和安装文件
cd webbench-1.5
vim Makefile (自定义安装路径,PREFIX?= /usr/local)
make&& make install
3.2 可能的报错
问题描述:
我的系统是CentOS6.3,在安装时报如下错误:
cc -Wall -ggdb -W -O -c -o webbench.o webbench.c
webbench.c: 在函数‘alarm_handler’中:
webbench.c:77: 警告:未使用的参数‘signal’
cc -Wall -ggdb -W -O -o webbench webbench.o
ctags *.c
install -s webbench /usr/local/bin
install -m 644 webbench.1 /usr/local/man/man1
install: 无法创建普通文件”/usr/local/man/man1“: 没有那个文件或目录
make: *** [install] 错误 1
解决办法:
1)缺少ctags命令引起的,需要安装ctags
wget prdownloads.sourceforge.net/ctags/ctags-5.8.tar.gzcd ctags-5.8
./configure && make && make install
2)无法创建普通文件”/usr/local/man/man1":没有那个文件或目录
在/usr/local/下手动创建man、man/man1,重新到webbench-1.5下make && makeinstall即可,
3.3 使用
webbench-c 500 -t 30 172.7.9.201/
参数说明:-c表示并发数,-t表示时间(秒)
测试结果:
[root@shiwei software]# webbench -c 500 –t 30 172.7.9.201/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar -, GPL Open Source Software.
Benchmarking: GET 172.7.9.201/
500 clients, running 30 sec.
Speed=721654 pages/min, 1900355 bytes/sec.
Requests: 360827 susceed, 0 failed.
每秒钟传输数据量:1900355 bytes/sec每秒钟相应请求数:721654/60= 12027 pages/sec
渗透测试是最能直接的反映系统的安全性的一种手段了,
记一次完整的WEB服务器渗透测试
,
现整理了前段时间进行的一次渗透测试的笔记,整个过程中所使用的工具和思路都比较简单,本文也正是为了您的系统不被这些简单的东西所击败而作 此次渗透测试的已知条件只有一个:目标IP地址211.***.***.11