Hacker News new | ask | show | jobs
by nisa 978 days ago
> Moodle is a total beast to scale, it uses a ton of memory and EVERYTHING assumes its running on one server, not a high-availability setup.

It's PHP and MySQL/PostgreSQL. Not really sure where there should be a problem. With CephFS or NFS scaling shouldn't be an issue for the most part and the database can run on another host?

2 comments

Have to install plugins to your repo to use with containers.

Sessions write to disk by default.

Uploading to S3 is a plugin you have to install - that defaults to still saving to disk then uploading after a minimum duration.

If there are no provisions at all for multi-server, sessions can be stored in local files, which would lead to probably pretty poor performance if they're thrown on an NFS share.
I've been running multi-server Moodle for many years. My sessions are in Redis, but you have the option to have them on the database. High traffic Moodle (mine is about 40k users) is a bit involved. You need to set up caching and also connection pooling in the database and there are a few hidden pitfalls, but it can be made to perform very decently