Performance recommendations

From MoodleDocs

Large installations tend to separate the web server and database onto separate servers, although for smaller installations this is typically not necessary.

The consensus in the Moodle community seems to be that a Linux-based webserver running Apache, with PHP installed as well as a PHP accelerator, is commonly the best choice.

It is possible to load-balance a Moodle installation, for example by using more than one webserver if necessary. The separate webservers should query the same database and refer to the same filestore area, but otherwise the separation of the application layers is complete enough to make this kind of clustering feasible. Similarly, the database could be a cluster of servers (e.g. a MySQL cluster).

Web server performance

  • Note that using secure web connections (https rather than http) carries a higher processing burden, both for the webserver and the client - particularly because cacheing cannot be used as effectively, so the number of file requests is likely to increase dramatically. For this reason using https for all Moodle pages is not recommended.

Database performance