What do you think of my load testing approach?

Events happening in the community are now at Drupal community events on www.drupal.org.
briwood's picture

I'm trying to evaluate if our VPS LAMP server can accommodate a website for a university department. Last years stats show this heavy day:

Page views: 23,000
Unique Visitors 2,500
Average Page views/visitor: 7

This is a "read only" site. Users just browse, they don't create content or submit any forms of any kind.

Based on http://books.google.com/books?id=sX60mAi0eQUC&pg=PA39&lpg=PA39&dq=Typica... I'm very roughly assuming that this site will see 70% of these hits between 8am-4pm

23,000 * .7 = 16,100.0 (average page views over 8 hour peak period)
16,100 / (8*60) = 34 (average page views in a 1 minute period)

Now I want to set up a Jmeter Test that approximates this traffic. Visitors average 7 page views per visit so...

34 / 7 = 5 (approximately)

…in a 1 min period I'm figuring that there might be 5 concurrent users on the site. So my Jmeter test contains 5 thread groups each of which browses 7 pages. Each thread group hits the home page and one other common page. The other 5 pages are unique to the thread group. Each thread group is set up as follows:

Number of threads (users): 1
Ramp Up Period: 1* 
Loop Count: 1

Since looping once doesn't create a very long test. I'm experimenting with setting each thread to 10 or more loops.

My test doesn't account for the "burstiness" of web traffic. To test for that I am planning on increasing the number of threads in each group…and/or I could double the number of thread groups, keeping the same ratio of unique to common pages.

*the ramp-up period tells JMeter how long to take to "ramp-up" to the full number of threads chosen. If 10 threads are used, and the ramp-up period is 100 seconds, then JMeter will take 100 seconds to get all 10 threads up and running. Each thread will start 10 (100/10) seconds after the previous thread was begun. If there are 30 threads and a ramp-up period of 120 seconds, then each successive thread will be delayed by 4 seconds. (http://jakarta.apache.org/jmeter/usermanual/test_plan.html)

Comments

If it's purely anonymous

mikeytown2's picture

If it's purely anonymous users, you should definitely try Boost.

This should be no problem

slantview's picture

This should be no problem with full page caching. I don't even think you need anything else. Maybe just make sure you install APC for opcode caching.

High performance

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: