Hello, Aditya!
Moodle is a robust platform, but supporting 1.5 million users distributed across different time zones requires careful planning.
First, it is essential to understand that Moodle does not have a fixed limit for concurrent users. Everything depends on server configuration, user behavior, and system optimization. I wrote something in this post that might help you! In it, I explain that the frequency of user navigation directly affects server load. For example, if users consume long videos and extensive texts, navigation will be more spaced out, reducing the impact on the server. But if the course requires many rapid clicks between pages, the load on the server and database will be higher. This behavior directly influences performance and should be considered when conducting load tests.
Another essential point is the use of a CDN (Content Delivery Network), which can significantly ease the load on the main server. An interesting case is Sill from ToDraw, who uses a server with only 2 cores and can support 50 concurrent users in training sessions, precisely because all heavy content (such as videos and images) is delivered via CDN. Imagine how this can make a difference in your infrastructure!
To reach such a high number of concurrent accesses, you will need a distributed architecture with load balancing, separate database servers, efficient caching like Redis, and database optimization.
Eduardo Kraus
Innovation and new products 🚀