Performance and Stress Testing Questions

Performance and Stress Testing Questions

by Wolf Ventir -
Number of replies: 9

Howdy all,

I recently had to set up this system:

  • 1 Apache Web Server
  • 2 MySQL nodes configured as a cluster

All three servers have the same hardware which is:

  • 2x 6 Core Intel(R) Xeon(R) CPU X5690 @ 3.47GHz  (12 cores)
  • 24 GB ram
  • CentOS 6
  • Apache 2.4 webserver
  • PHP 5.4
  • XCache 2.0
Some optimization tricks Ive done:
  • Using Apache event MPM, setting the StartServers, ThreadsPerChild and other related things to high values
  • Installed XCache 
  • Disabled PHP error logging
  • Routed Apache error and access logs to /dev/null
  • Increased MySQL Cluster IndexDataSize to 2 gigs

Now that I have moodle all set up my next goal is to stress test my instance to see how many people I can reasonably expect to support at one time. My thinking was this:

Use ab (ApacheBenchmark) to test on a static html page, the moodle login page, and a moodle page that queried some user data. The command would look something like this:

ab -r -n 15000 -c 300 xxx/login/index.php

 

Is this a good method of testing? Is this a reliable method of testing? Is there a better method? I saw a topic on UnixBench, but will that help me obtain website performance or just system performance?

Thank you for any help, I am alone in uncharted waters so I figured Id shoot up a signal flare smile

Average of ratings: -
In reply to Wolf Ventir

Re: Performance and Stress Testing Questions

by Marcus Green -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers

Get apache Jmeter and run some scripts that simulate the paths of real users. It is not a substitute for real life, but it might help. 

In reply to Wolf Ventir

Re: Performance and Stress Testing Questions

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
What is the expected peak load?
In reply to Visvanath Ratnaweera

Re: Performance and Stress Testing Questions

by Rob Monk -

We are interested in Stress testing too. 

Usually our moodle site hums along quite happily with up to 100 users online at a time. It tends to grind to a halt (page load times of over 30 seconds) when we have over 100 users trying to do a quiz. As the staff member who is encouraging the use of moodle the feedback I get when the system grinds to a halt is not pleasant. 

My tecnition says he'd like to try some things to see if we can get better performance under load. I would prefer a "simulated load" rather than 100+ frustrated users who are trying to do a quiz that won't load. 

In reply to Rob Monk

Re: Performance and Stress Testing Questions

by Sam McNeill -

Rob, what is the system config for your server? 

I anticipate around 100 concurrent users in the near future and would like to compare specs. Currently we use:

Ubuntu 12.04 virtual install on HyperV

4 Core CPU

4GB RAM

Moodle 2.2.2

MySQL 5.x 

PHP 5.3.1

We've seen around 40 concurrent users so far and the Load on the server has gone high when they are either a) all signing in, or b) all uploading files, but this is very transient load and the box rebounds very quickly.

Cheers

In reply to Rob Monk

Re: Performance and Stress Testing Questions

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Hi Rob

It is about the discussion "Slow Moodle" http://moodle.org/mod/forum/discuss.php?d=196122#p891838 I believe.

I have replied to that post. It is better if your specific problem is discussed in the original thread (the information your technician needs is there) and in this thread we discuss the general topic of stress testing a Moodle server
In reply to Visvanath Ratnaweera

Re: Performance and Stress Testing Questions

by Wolf Ventir -

We are planning to have 25,000 users registered, with hopefully under 500 on at any given time.

In reply to Wolf Ventir

Re: Performance and Stress Testing Questions

by Simon Story -

To help you generate the JMeter scripts, try the generator at: https://github.com/kabalin/moodle-jmeter-script-generator

Average of ratings: Useful (1)
In reply to Simon Story

Re: Performance and Stress Testing Questions

by Wolf Ventir -

Thank you, I will check that out right now. 

In reply to Wolf Ventir

Re: Performance and Stress Testing Questions

by Cathal O'Riordan -
Picture of Core developers

Hi Wolf,


How did you configure your MySQL cluster? Do you have any guidelines on how to go about this?


best regards,

Cathal.