Jump to content

Performance testing a PW application


gebeer
 Share

Recommended Posts

Hello,

I'm in the process of building a web application with PW that delivers data to mobile clients.

There will be up to 1000 requests per minute to my webapp (later maybe more). Every request triggers a search through up to 1000 pages and compares timestamps that are sent by the mobile clients with the request to timestamps that are saved with each page that is being searched.

The timestamps are saved in PW in their own table in the DB together with a page reference id which makes searching pretty fast.

For my search I use:

$ads = $pages->find("template=advertisement, ad_server=$serverID, ad_publish_at.date<$tsHigh, ad_publish_at.date>$tsLow");

I want to do some load testing for my webapp to ensure it can handle that many requests per minute and further optimize it.

What I need is a testing framework that lets me simulate hundreds of requests/minute.

Have you ever done this and what testing framework would you use?

Here are some apps that I briefly took a look at:

http://jmeter.apache.org/

http://www.pylot.org/

https://code.google.com/p/httperf/

https://github.com/JoeDog/siege

Link to comment
Share on other sites

First tests on a shared host (uberspace.de) reveal nothing good for only 1000 requests and 100 at a time and searching only through 10 pages.

Running ApacheBench on the same server that my app is on.

Concurrency Level:      100
Time taken for tests:   10.772 seconds
Complete requests:      1000
Failed requests:        20
   (Connect: 0, Receive: 0, Length: 20, Exceptions: 0)
Write errors:           0
Total transferred:      1321560 bytes
HTML transferred:       1144560 bytes
Requests per second:    92.84 [#/sec] (mean)
Time per request:       1077.164 [ms] (mean)
Time per request:       10.772 [ms] (mean, across all concurrent requests)
Transfer rate:          119.81 [Kbytes/sec] received

Now comes the hard part: improving my code ;)

Link to comment
Share on other sites

  • 2 months later...

hi gebeer,

also doing some ab testing here ;) how did everything work out for you?

The apache benchmarking tool (ab) assumes that length of response content will be the same during entire test. It stores the content length of the first response. If any of further responses have different content length, they result in "length failures".

http://stackoverflow.com/questions/579450/load-testing-with-ab-fake-failed-requests-length

any insights in that aspect?

Link to comment
Share on other sites

 Share

×
×
  • Create New...