forked from seriyps/wrk
-
Notifications
You must be signed in to change notification settings - Fork 0
Modern HTTP benchmarking tool
License
vlm/wrk
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
wrk - a HTTP benchmarking tool wrk is a modern HTTP benchmarking tool capable of generating significant load when run on a single multi-core CPU. It combines a multithreaded design with scalable event notification systems such as epoll and kqueue. Basic Usage wrk -k -t8 -c400 -r10m http://localhost:8080/index.html This runs wrk with 8 threads, keeping 400 connections open, and making a total of 10 million HTTP GET requests to http://localhost:8080/index.html Output: Making 10000000 requests to http://localhost:8080/index.html 8 threads and 400 connections Completed 2516980 requests Completed 5033960 requests Completed 7550940 requests Thread Stats Avg Stdev Max +/- Stdev Latency 439.75us 350.49us 7.60ms 92.88% Req/Sec 61.13k 8.26k 72.00k 87.54% 10000088 requests, 100222 sock connections in 19.87s, 3.42GB read Requests/sec: 503396.23 Transfer/sec: 176.16MB Benchmarking Tips The machine running wrk must have a sufficient number of ephemeral ports available and closed sockets should be recycled quickly, especially when HTTP/1.1 keep-alive is disabled. To handle the initial connection burst the server's listen(2) backlog should be greater than the number of concurrent connections being tested. Acknowledgements wrk contains code from a number of open source projects including the 'ae' event loop from redis, the nginx/joyent/node.js 'http-parser' and the Tiny Mersenne Twister PRNG. Please consult the NOTICE file for licensing details.
About
Modern HTTP benchmarking tool
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- C 95.9%
- C++ 4.1%