Performance problems with 50 concurrent users

Performance problems with 50 concurrent users

by Harmeet Saini -
Number of replies: 3
We tested Moodle for 50 concurrent users using JMeter with following details

System hardware : Intel Core 2 Duo T8100 @ 2.10 GHz, 2.09GHz
2 GB RAM

Test Case : 50 users concurrently accessed login page, entered credentials and then logged out. Requests were distributed over 1 second (i.e. 1 second ramp).
JMeter test case file is attached here for further reference.

Result :
----------------------------Activity -------------------------------90% line(ms) ------------error %
1) home page view before login -------------------------7873-------------------------0
2) login page view --------------------------------------------1393------------------------0
3) login info submission -------------------------------------26985---------------------- 0
4) home page view after login ----------------------------28334---------------------- 0
5) logout--------------------------------------------------------- 696------------------------- 0
6) home page view after logout --------------------------23413---------------------- 0

During the test case execution average CPU consumption by Apache was 95 % .
But RAM was consumed about 700 MB
Is that obvious ? Or CPU consuption by Apache is it too high?

Additional Info:
eAccelerator is used with following settings in php.ini

extension=eaccelerator.dll
eaccelerator.shm_size = "64"
eaccelerator.cache_dir = "C:\xampp\tmp"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.debug = "0"
eaccelerator.check_mtime = "1"
eaccelerator.filter = ""
eaccelerator.shm_max = "10"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_Xonly= "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"
eaccelerator.admin.name=
eaccelerator.admin.password =

Please let me know if any other information is required.
Average of ratings: Useful (1)
In reply to Harmeet Saini

Re: Performance problems with 50 concurrent users

by Eloy Lafuente (stronk7) -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Peer reviewers Picture of Plugin developers Picture of Testers
Just a quick thought about missing information:

- OS version / OS bits?
- PHP version?
- Moodle version?

Also something to quick test (eAccelerator related):

- eaccelerator.shm_size = "128" (specially if using Moodle 2.0 and/or 64 bits architecture)
- eaccelerator.check_mtime = "0" (specially if using Windows)
- eaccelerator.optimizer="0" (I think the optimizer doesn't use to work since some time ago, not 100% sure).

And one quick side-comment:

Of course, it's important to verify that the webserver allows at least 50 requests to be processed simultaneously. Else, they are getting queued and the test/results aren't really useful.

Ciao smile
In reply to Eloy Lafuente (stronk7)

Re: Performance problems with 50 concurrent users

by Harmeet Saini -
Operating System : Windows Server 2003, 32 bits
PHP version 5.2.9
Moodle Version: 1.9.2 +
And yes Apache is configured to handle 300 concurrent users.


In reply to Harmeet Saini

Re: Performance problems with 50 concurrent users

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
Sounds about right from my experience. The quickest fix is probably to increase the RAM - a lot. 2GB for Moodle on a Windows server is nothing.

Better yet - put 'nix on it.
Average of ratings: Useful (2)