Performance FAQ: Difference between revisions
Line 10: | Line 10: | ||
===How do I benchmark a Moodle-site?=== | ===How do I benchmark a Moodle-site?=== | ||
You can ofcourse benchmark each component of the software stack, | You can ofcourse benchmark each component of the software stack, starting from the operating system upto the database https://docs.moodle.org/en/Performance#Obtain_a_baseline_benchmark . But there is no easy formula to deduct the maximum number of concurrent users from those data. | ||
There is a PHP-script [2] circulating amoung the community which | There is a PHP-script [2] circulating amoung the Moodle-community which calculates a ballpark figure. Take the current version from 1. March 2007 posted here [3]. Please note running this script on a production server may have side-effects, you are strongly adviced to run it on a test-site. | ||
[2] http://moodle.org/mod/forum/discuss.php?d=57028 | [2] http://moodle.org/mod/forum/discuss.php?d=57028 |
Revision as of 11:16, 8 October 2009
How do you define "concurrent users"?
As has been repeatedly stressed in the forum [0], the load on the server depends primarily on the number of concurrent users, not on the total number of users neither the number of users logged-in at a given time. In this context, the concurrent users are those for whom the server actively doing something [1]. It may by processing a webpage written in PHP, processing a database querry or simply transfering a file.
[0] Using Moodle Hardware and Performance forum
[1] http://en.wikipedia.org/wiki/Concurrency_(computer_science)
How do I benchmark a Moodle-site?
You can ofcourse benchmark each component of the software stack, starting from the operating system upto the database https://docs.moodle.org/en/Performance#Obtain_a_baseline_benchmark . But there is no easy formula to deduct the maximum number of concurrent users from those data.
There is a PHP-script [2] circulating amoung the Moodle-community which calculates a ballpark figure. Take the current version from 1. March 2007 posted here [3]. Please note running this script on a production server may have side-effects, you are strongly adviced to run it on a test-site.
[2] http://moodle.org/mod/forum/discuss.php?d=57028
[3] http://moodle.org/mod/forum/discuss.php?d=57028#p296907
What are PHP-accelerators?
For the definition see Wikipedia [4]. Read the Performance documentation [5] for possible software.
[4] http://en.wikipedia.org/wiki/PHP_accelerator
[5] https://docs.moodle.org/en/Performance#PHP_performance
How do I cluster Moodle?
How do I replicate Moodle?
My site is very slow, what should I do?
First of all you have to find out whether the performance is normal or something malfunctions. There are many things which can go wrong:
- bug in Moodle
- corrupted database
- memory leaks or other crashes in the system
If everything above is right, this performance could be "normal" under the given circumstances:
- How much RAM, processing power do you have?
- What is the software stack you use? (Unix, Windows, Apache, IIS, MySQL, SQL-Server, ...?)
- how many users are concurrent
- what modules/activities they use? See https://docs.moodle.org/en/Performance#Performance_of_different_Moodle_modules
- is your networt setup property? DNS, firewalls. Also check local firewalls and other local security tools?
Try to get a benchmark https://docs.moodle.org/en/Performance#Obtain_a_baseline_benchmark and compare it with the published figures.
What hardware is needed for N users?
A moodle setup for 10K simultaneous users