Some thoughts

directly from the furnace

Moodles cron jobs beschleunigen

Moodle ist ein recht träges System, das sich aber punktuell und mit gezielten Maßnahmen deutlich beschleunigen lässt. Eine davon ist die Ausführung der cron-Jobs, die man entweder über einen http-Aufruf laufen lassen kann oder, und hier kommt der Clou, direkt mit php aufrufen kann. Lässt man das dann alle paar Minuten über cron laufen, dann macht das einen erheblichen Unterschied aus. Der Test mit einer kleineren Installation ergab, dass ein Apache-Aufruf etwa 20 Sekunden in Anspruch nahm, der direkte Aufruf schon nach etwa 4 Sekunden erledigt war. Das war also eine Steigerung von über 500%, von der Schonung weiterer Ressourcen spreche ich noch gar nicht. Wenn man den Unterschied bei NewRelic beobachtet, sieht man schön, dass die Anfragen an die Datenbank und an den Server im allgemeinen bedeutend nachlassen.

In meiner Installation unter Ubuntu 12.04 sah der Aufruf mit der cron Tabelle wie folgt aus:

*/10 * * * * php -q -f /usr/share/nginx/www/moodle/admin/cli/cron.php

Das wars, wird mittels:

crontab -e

in die cron-Tabelle eingetragen und fertig.