Note: You are currently viewing documentation for Moodle 2.3. Up-to-date documentation for the latest stable version is available here: Performance FAQ.

Performance FAQ: Difference between revisions

From MoodleDocs
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, staring from the operating system upto the database. But there is no easy formula to deduct the maximum number of concurrent users from those data.
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 gives you 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.
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:

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

How many users will my installation support?

Which operating system is the best?

What is the best webserver?

Should I go for 64 bit or is 32 bit OK?

What hosting provider do you recommend?