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

Performance FAQ: Difference between revisions

From MoodleDocs
(Added link to spanish translation of page)
 
(27 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{stub}}
{{Performance}}
==How do you define "concurrent users"?==
As has been repeatedly stressed in the [http://moodle.org/mod/forum/view.php?f=94 Hardware and performance] forum, the load on the server at a particular time depends on the number of concurrent users, not on the total number of users neither on the number of users logged-in. The term "concurrent users" is used to mean those users for whom the server is actively doing something . It may by processing a webpage written in PHP, querying the database or simply transferring a file. (see also Wikipedia [http://en.wikipedia.org/wiki/Concurrency_(computer_science) Concurrency])


===How do you define "concurrent users"?===
==How do I benchmark a Moodle-site?==
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.
You can of course benchmark parts of the system separately: the hardware as seen by the operating system (eg. CPU, disk access), web server performance, database server performance, execution on PHP operations, etc. For further details see [[Performance_recommendations#Obtain_a_baseline_benchmark]].


But there is no easy formula to deduce the maximum number of concurrent users from those results. There is a PHP-script, the [http://moodle.org/mod/forum/discuss.php?d=57028 Performance perspectives - a little script], circulating amoung the Moodle-community which calculates a ballpark figure. The current version is attached to [http://moodle.org/mod/forum/discuss.php?d=57028&parent=772267|the posting on 25. March 2011].


[0] Using Moodle [http://moodle.org/mod/forum/view.php?f=94 Hardware and Performance forum]
Warning: Note that running this script on a production server may have unwanted side-effects. You are strongly advised to run it on a test-site.


[1] http://en.wikipedia.org/wiki/Concurrency_(computer_science)
==What are PHP-accelerators?==
See Wikipedia [http://en.wikipedia.org/wiki/PHP_accelerator PHP accelerator].


===How do I benchmark a Moodle-site?===
Available software are documented under [[Performance_recommendations#PHP_performance]].  
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.
You find some user suggestions here [http://moodle.org/mod/forum/discuss.php?d=168965 Update on PHP-accelerators].


[2] http://moodle.org/mod/forum/discuss.php?d=57028
==How do I cluster Moodle?==


[3] http://moodle.org/mod/forum/discuss.php?d=57028#p296907
See [[Performance_recommendations#Scalability]]


===What are PHP-accelerators?===
[[Moodle_Clusters]]
For the definition see Wikipedia [4]. Read the Performance documentation [5] for possible software.


[4] http://en.wikipedia.org/wiki/PHP_accelerator
==How do I replicate Moodle?==


[5] https://docs.moodle.org/en/Performance#PHP_performance
[[Mirroring_Moodle]]


===How do I cluster Moodle?===
[http://moodle.org/mod/forum/discuss.php?d=173408&parent=760514  How to Replicate MOODLE ??!!]


http://moodle.org/mod/forum/discuss.php?d=57202
==My site is very slow, what should I do?==
 
===How do I replicate Moodle?===
 
 
 
===My site is very slow, what should I do?===


First find out "how slow". (The theme-trick here).
First find out "how slow". (The theme-trick here).
Line 43: Line 39:
* bug in Moodle
* bug in Moodle
* corrupted database
* corrupted database
* networking issues (DNS, firewalls, ...)


Or your performance could be "normal" under the given circumstances:
Or your performance could be "normal" under the given circumstances:
* Is it a root-server, dedicated server, virtual (shared) server
* Are you on a dedicated server or a shared (virtual) server?
* How much RAM, processing power do you have?
* How much RAM, processing power do you have?
* What is the software stack you use? (Unix or Windows, Apache or IIS, MySQL, PostgreSQL or SQL-Server, ...?)
* What is the software stack you use? (Unix or Windows, Apache or IIS, MySQL, PostgreSQL or SQL-Server, ...?)
* how many concurrent users slows the system down
* how many concurrent users can you support
* what modules/activities they use? Check [https://docs.moodle.org/en/Performance#Performance_of_different_Moodle_modules Performance of different Moodle modules]
* what modules/activities you use? Check [[Performance_recommendations#Performance of different Moodle modules]]
* is your networt setup property? DNS, firewalls. Also check local firewalls and other local security tools?
 
[[Performance_recommendations#Obtain a baseline benchmark]] and compare it with the published figures.


[https://docs.moodle.org/en/Performance#Obtain_a_baseline_benchmark Obtain a baseline benchmark] and compare it with the published figures.
==What are the requirements for N users?==


http://moodle.org/mod/forum/discuss.php?d=102978
[http://moodle.org/mod/forum/discuss.php?d=111847 A moodle setup for 10K simultaneous users]
http://moodle.org/mod/forum/discuss.php?d=103040


===What are the requirments for N users?===
==How many users will my installation support?==


[http://moodle.org/mod/forum/discuss.php?d=111847 A moodle setup for 10K simultaneous users]
This is another way of asking the same question as above. Please move up.


===How many users will my installation support?===
==What is the best webserver?==


See above [https://docs.moodle.org/en/Performance_FAQ#What_are_the_requirments_for_N_users.3F What are the requirments for N users?]
==Should I go for 64 bit or is 32 bit OK?==


===Which operating system is the best?===
==What hosting provider do you recommend?==
http://moodle.org/mod/forum/discuss.php?d=99405


===What is the best webserver?===
== See also ==


===Should I go for 64 bit or is 32 bit OK?===
Using Moodle forum discussions
* [http://moodle.org/mod/forum/search.php?notwords=Re:&id=5&subject=performance All performance related discussions]
* [http://moodle.org/mod/forum/search.php?notwords=Re:&id=5&forumid=33&&subject=performance Performance related discussions in the General Developer forum]


===What hosting provider do you recommend?===
* [http://moodle.org/mod/forum/discuss.php?d=102978 1000 concurrent users]
http://moodle.org/mod/forum/discuss.php?d=99405
* [http://moodle.org/mod/forum/discuss.php?d=103040 Tool to estimate server's maximum concurrent users]
* [http://moodle.org/mod/forum/discuss.php?d=144718 Handling Moodle database load - a solution!]
 
[[Category:FAQ]]


[[Category:FAQ]] I [[Category: Administrator]] I [[Category:Performance]]
[[es:Desempeño FAQ]]

Latest revision as of 16:13, 15 June 2015

How do you define "concurrent users"?

As has been repeatedly stressed in the Hardware and performance forum, the load on the server at a particular time depends on the number of concurrent users, not on the total number of users neither on the number of users logged-in. The term "concurrent users" is used to mean those users for whom the server is actively doing something . It may by processing a webpage written in PHP, querying the database or simply transferring a file. (see also Wikipedia Concurrency)

How do I benchmark a Moodle-site?

You can of course benchmark parts of the system separately: the hardware as seen by the operating system (eg. CPU, disk access), web server performance, database server performance, execution on PHP operations, etc. For further details see Performance_recommendations#Obtain_a_baseline_benchmark.

But there is no easy formula to deduce the maximum number of concurrent users from those results. There is a PHP-script, the Performance perspectives - a little script, circulating amoung the Moodle-community which calculates a ballpark figure. The current version is attached to posting on 25. March 2011.

Warning: Note that running this script on a production server may have unwanted side-effects. You are strongly advised to run it on a test-site.

What are PHP-accelerators?

See Wikipedia PHP accelerator.

Available software are documented under Performance_recommendations#PHP_performance.

You find some user suggestions here Update on PHP-accelerators.

How do I cluster Moodle?

See Performance_recommendations#Scalability

Moodle_Clusters

How do I replicate Moodle?

Mirroring_Moodle

How to Replicate MOODLE ??!!

My site is very slow, what should I do?

First find out "how slow". (The theme-trick here).

The next question is, whether the performance is normal or something malfunctions. There are many things which can malfunction:

  • hardware
  • crashed filesystems, specially network filesystems
  • memory leaks or other crashes in the system
  • bug in Moodle
  • corrupted database
  • networking issues (DNS, firewalls, ...)

Or your performance could be "normal" under the given circumstances:

  • Are you on a dedicated server or a shared (virtual) server?
  • How much RAM, processing power do you have?
  • What is the software stack you use? (Unix or Windows, Apache or IIS, MySQL, PostgreSQL or SQL-Server, ...?)
  • how many concurrent users can you support
  • what modules/activities you use? Check Performance_recommendations#Performance of different Moodle modules

Performance_recommendations#Obtain a baseline benchmark and compare it with the published figures.

What are the requirements for N users?

A moodle setup for 10K simultaneous users

How many users will my installation support?

This is another way of asking the same question as above. Please move up.

What is the best webserver?

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

What hosting provider do you recommend?

http://moodle.org/mod/forum/discuss.php?d=99405

See also

Using Moodle forum discussions