Web server performance/Stress testing tools Http_load, Webbench, AB, Siege tutorial

Source: Internet
Author: User
Tags vps

Category: Web schemas 2010-10-04 16:07 371 People read Comments (0) favorite reports Test Tools Web Service attributestransactionsauthenticationconcurrency

Ext.: http://blog.licess.org/http_load-webbench-ab-siege/

First, Http_load

The program is very small, after decompression is less than 100K

The http_load runs in parallel multiplexing to test the throughput and load of the Web server. But it's different from most stress testers.

, it can run in a single process and generally does not kill the client. You can also test site requests for HTTPS classes.

: http://soft.vpser.net/test/http_load/http_load-12mar2006.tar.gz
Installation is simple
#tar ZXVF http_load-12mar2006.tar.gz
#cd http_load-12mar2006
#make && make Install

Command format: http_load-p number of concurrent access processes-S access time URL file to access

Parameters can be freely combined, and there is no limit to the choice between parameters. Like you wrote Http_load-parallel 5-seconds.

The urls.txt is also possible. Let's give you a brief explanation of the parameters.
-parallel Shorthand-P: means the number of concurrent user processes.
-fetches abbreviated-F: Meaning total number of accesses
-rate Shorthand-P: meaning the frequency of visits per second
-seconds shorthand-S: meaning Total access time

Prepare URL file: Urllist.txt, file format is one url,url per line preferably more than 50-100 test results better. file format

As follows:
Http://www.vpser.net/uncategorized/choose-vps.html
Http://www.vpser.net/vps-cp/hypervm-tutorial.html
Http://www.vpser.net/coupons/diavps-april-coupons.html
Http://www.vpser.net/security/vps-backup-web-mysql.html
For example:

Http_load-p 30-s Urllist.txt
Parameter understanding, let's look at running a command to see its return result
Command:%./http_load-rate 5-seconds The URLs description performed a test that lasted for 10 seconds, with a frequency of 5 per second.

Fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds5916 mean bytes/connection4.89274

Fetches/sec, 28945.5 bytes/secmsecs/connect:28.8932 mean, 44.243 Max, 24.488 Minmsecs/first

-response:63.5362 mean, 81.624 Max, 57.803 minhttp response Codes:code 200-49

Results Analysis:
1. Fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds
Description in the above test run 49 requests, the maximum number of concurrent processes is 2, the total transfer of data is 289884bytes, the run time is 10.0148 seconds
2. 5916 mean bytes/connection shows the average amount of data transmitted per connection 289884/49=5916
3. 4.89274 fetches/sec, 28945.5 bytes/sec
Indicates that the response request per second is 4.89274, and the data passed per second is 28945.5 bytes/sec
4. msecs/connect:28.8932 mean, 44.243 max, 24.488 min indicates that the average response time per connection is 28.8932 msecs

, maximum response time 44.243 msecs, minimum response time 24.488 msecs
5. msecs/first-response:63.5362 mean, 81.624 max, 57.803 min
6, HTTP response Codes:code 200-49 explains the type of open response page, if the type of 403 is too many, it may

Be aware that the system is experiencing bottlenecks.
Special Instructions:
The main indicators in the test results are fetches/sec, Msecs/connect, which is the number of queries that the server can respond to per second.

Use this indicator to measure performance. Seems to be a bit higher than Apache's AB accuracy and more persuasive.
Qpt-responds to user times per second and response time per connection.
The result of the test is mainly to look at these two values. Of course only these two indicators do not complete the performance analysis, we also need to the server

CPU, men to analyze, to draw conclusions

Second, Webbench

Webbench is a Web site stress testing tool under Linux that can simulate up to 30,000 concurrent connections to test the load capacity of a Web site. can go to google search, I am here to give a
: http://soft.vpser.net/test/webbench/webbench-1.5.tar.gz
This program is smaller, after decompression less than 50K, hehe
Very simple installation
#tar ZXVF webbench-1.5.tar.gz
#cd webbench-1.5
#make && make Install
Generates the Webbench executable file in the current directory, which can be used directly

Usage:

Webbench-c Concurrent number-T run test time URL
Such as:
Webbench-c 5000-t http://www.vpser.net

Third, AB
AB is a powerful test tool from Apache
Apache has been installed in the general to bring their own,
Usage to view its description

$./ab
./ab:wrong Number of arguments
Usage:./ab [Options] [http://]hostname[:p Ort]/path
Options are:
-N requests number of requests to perform
-c concurrency number of multiple requests to make
-T TimeLimit Seconds to Max. Wait for responses
-P postfile File containing data to POST
-T Content-type content-type header for POSTing
-V verbosity how much troubleshooting info to print
-W Print out results in HTML tables
-I use HEAD instead of GET
-X attributes String to insert as table attributes
-Y attributes String to insert as TR attributes
-Z attributes String to insert as TD or TH attributes
-C attribute Add cookie, eg. ' Apache=1234. (repeatable)
-H attribute Add arbitrary header line, eg. ' Accept-encoding:gzip '
Inserted after all normal header lines. (repeatable)
-A attribute Add Basic WWW authentication, the attributes
is a colon separated username and password.
-P attribute Add Basic Proxy authentication, the attributes
is a colon separated username and password.
-X Proxy:port ProxyServer and port number to use
-V Print version number and exit
-K Use HTTP KeepAlive feature
-D do not show percentiles served table.
-S do not show confidence estimators and warnings.
-G filename Output collected data to gnuplot format file.
-e filename Output CSV file with percentages served
-H Display Usage information (this message)
There are many parameters, generally we use the-N and-C
For example:
./ab-c 1000-n http://www.vpser.net/index.php

This represents processing 1000 requests at the same time and running the index.php file 100 times.
Iv. Siege
An open-source stress testing tool that allows multiuser concurrent access to a Web site based on configuration, recording the corresponding time for each user's request process, and repeating under a number of concurrent accesses.
Official: http://www.joedog.org/
Siege Download: http://soft.vpser.net/test/siege/siege-2.67.tar.gz
Extract:
# TAR-ZXF Siege-2.67.tar.gz
Go to unzip directory:
# CD siege-2.67/
Installation:
#./configure; Make
#make Install

Use
Siege-c 200-r 10-f Example.url
-C is the concurrency,-R is the number of repetitions. The URL file is a text, each line is a URL, it will be randomly accessed from the inside.

Example.url content:

http://www.licess.cn
Http://www.vpser.net
Http://soft.vpser.net

Result description
Lifting the server siege ... done.
transactions:3419263 hits//completed 419,263 times processing
availability:100.00%//100.00% success rate
Elapsed time:5999.69 secs//Total time
Data transferred:84273.91 MB//Total data transfer 84273.91 MB
Response time:0.37 secs//spents 1.65 seconds: Shows the speed of the network connection
Transaction rate:569.91 trans/sec//569.91 processing per second: indicates the server
throughput:14.05 mb/sec//Average data transfer per second
concurrency:213.42//Actual maximum number of concurrent
Successful transactions:2564081//successful processing times
Failed transactions:11//Failure handling times
Longest transaction:29.04//maximum time spent per transmission
Shortest transaction:0.00//minimum time per transmission

10 free web stress test Tools

Category: Web schemas 2010-10-04 16:04 204 People read Comments (0) favorite reports

Test tools Web test Tools Script Server

Ext.: http://coolshell.cn/articles/2589.html


Two days, JNJ in this site, "How to test Web applications in a low-speed network," which is a bad test of the network situation. Here are 10 free tools that can be used for Web load/Stress testing, so you can see how much concurrency your server and your Web app can hold, and the performance of your site. I believe that the development team of the Beijing Olympic Committee's booking website does not know that there is such a test tool.

Grinder –grinder is an open-source JVM load test framework that facilitates distributed testing with many load syringes. The Jython scripting engine HTTP tests that support the execution of test scripts can be managed through an HTTP proxy. According to the project website, Grinder's main target audience is "the person who understands the code they're measuring--grinder not just a ' black box ' test with a set of correlated response times." Because the testing process can be coded-rather than simply scripted, programmers can test the internal levels of the application, not just the response time through the user interface.

Pylot -pylot is an open-source test Web Service performance and Extensibility tool that runs HTTP load tests, which are useful for capacity planning, benchmarking, analysis, and system tuning. Pylot generates concurrent loads (HTTP requests), verifies server responses, and produces reports with metrics. Execute and monitor test suites via GUI or shell/console.

Web Capacity Analysis tool (WCAT) – A lightweight load generation utility that reproduces script HTTP requests to a WEB server (or load-balanced farm) and collects performance statistics for future analyses. WCAT is a multithreaded application and supports controlling multiple load test clients from a single source, so you can simulate thousands of concurrent users. The utility leverages your old machine as a test client, where each test client can produce multiple virtual clients (the maximum number depends on the client machine's network adapter and other hardware). You can choose to use HTTP 1.0 or HTTP 1.1 requests, and whether to use SSL. And, if the test scenario requires it, you can also use the basic or NTLM authentication that the script performs to access the restricted portions of the site. (If your site uses cookies, forms, or session-based authentication, you can create the correct GET or POST request to authenticate the test user.) WCAT can also manage any cookies that your site may have, so profiles and session information are saved permanently.


Fwptt –fwptt is also a tool for Web application load testing. It can record general requests, or it can record Ajax requests. It can be used to test ASP. NET, JSP, PHP, or other Web applications.

Jcrawler –jcrawler is an open source (CPL) Web Application Stress testing tool. By its name, you'll know it's a web crawler-like tool written in Java. As long as you give it a few URLs, it can begin to crawl past it in a special way to generate the load of your Web application. This tool can be used to test the load generated by search engines on your site. Of course, there is another feature, you can build your site map and click again, will automatically submit sitemaps to the top 5 search engines!

Apache JMeter –apache JMeter is a 100% pure Java Desktop Run program designed for run and server load testing. It was originally designed for web/http testing, but it has been extended to support a wide variety of test modules. It is shipped with modules for HTTP and SQL databases (using JDBC). It can be used to test the operation of a static database or a server in an active database, which can be used to simulate a heavy load on a server or network system to test its resistance, or to analyze all operating conditions under different load types. It also provides a replaceable interface for customizing data display, test synchronization, and test creation and execution.

Siege -siege (in English means siege) is a stress testing and evaluation tool designed for web development that assesses the affordability of applications under pressure: Multiple concurrent access to a Web site can be configured on a per-user basis, recording the corresponding time for each request process and repeated under a certain number of concurrent accesses. Siege supports Basic authentication, cookies, HTTP and HTTPS protocols.

The http_load –http_load runs in parallel multiplexing to test the throughput and load of the Web server. However, unlike most stress testing tools, it can run in a single process and generally does not kill the client. You can test site requests for HTTPS classes.

Web Polygraph – Web Polygraph This software is also a tool for testing Web performance, a tool that is a standard test tool for many companies, including Microsoft's use of this tool as a benchmark tool when analyzing its software performance. Many recruitment testers in the ads indicate the need to master the test tool.

Opensta –opensta is a free, open-source Web performance testing tool that can record powerful script processes and perform performance tests. For example, virtual multiple different users log on to the tested site at the same time. It can also be performed on the recorded test script and edited according to the specified syntax. After you have finished recording your test scripts, you can edit the test scripts to perform specific performance metrics analysis. Its richer graphical test results greatly improve the readability of the test report. Opensta based on the CORBA architecture, it uses its special script to control the language and records all HTTP/S traffic through the proxy through a virtual proxy. The performance of the system is analyzed by analyzing the performance metrics collected by the Opensta performance indicators, as well as the HTTP data.

You are welcome to leave a tool that you think is good for Web application performance testing.

Web server performance/Stress testing tools Http_load, Webbench, AB, Siege tutorial

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.