BigBlueButton, the most-popular open-source online learning platform, is widely adopted across thousands of schools and educational institutions to facilitate effective online classes.
Its surge in popularity can be attributed to its user-friendly interface, capability to deliver high-definition video learning, and a variety of interactive tools that stimulate an engaging learning environment.
However, as the digital learning space expands, so does the demand for accommodating larger student bodies.
Given BigBlueButton’s initial limitation of hosting up to 100 students per class and only 300 students per server, scaling becomes a crucial aspect to cater to burgeoning student enrollments.
This is where the scalable architecture of BigBlueButton comes into play.
Leveraging technologies like Scalelite, it ensures that your online classrooms can expand seamlessly to cater to increasing user demands, offering a high-quality learning experience without compromise.
Introduction to BigBlueButton Scalelite
Scalelite is designed to manage and evenly distribute the class load across a pool of BigBlueButton servers, presenting them as a single, highly scalable entity to the front-end.
A front-end platform, like Moodle or Greenlight, sends standard BigBlueButton API requests to the Scalelite server.
The server then dispatches these requests to the least busy BigBlueButton server in the pool, resulting in an effective balance of class requests across all servers.
Coupling Scalelite’s load-balancing prowess with HigherEdLab.com’s features like ChatGPT-powered quizzes and transcriptions, custom domains, logos, colors, and advanced user management, integration, and analytics ensures an enriched and scalable online classroom experience.
BigBlueButton Scalelite’s Architecture: The Vital Components
Setting up Scalelite involves key components, each with an important role in the architecture:
BigBlueButton Servers: A minimum of three is recommended. Automating their setup is feasible with the bbb-install.sh script, which installs, configures (with SSL + Let’s Encrypt), and updates the server as new BigBlueButton versions are released. For users operating under restrictive firewalls, a TURN server setup and configuration is recommended.
Scalelite LoadBalancer Server: This vital component balances the load among the BigBlueButton servers. The minimum recommended server requirements for the Scalelite Server are 4 CPU cores and 8 GB memory.
NFS Shared Volume: Used for sharing recordings, with specific setup instructions provided in the documentation.
PostgreSQL Database: This database manages and stores data. The minimum recommended server requirements are 2 CPU cores, 2 GB memory, and 20 GB disk space.
Redis Cache: Enhances performance with minimum server requirements of 2 CPU cores and 0.5 GB memory. Note, persistence must be enabled for Redis Cache.
When Scalelite receives a new class request, it assigns the class to the least loaded server in the pool. Scalelite also expertly handles recordings by consolidating and indexing them in a database, quickly returning the list of available recordings upon an incoming getRecordings request.
For more information on setting up Scalelite, please check the official document.
Minimum Server Requirements
To implement Scalelite, you’ll need servers that meet the following minimum recommendations:
- 4 CPU Cores
- 8 GB Memory
- Latest version of Docker (note, ScaleLite will not run on Docker 19.x)
Each BigBlueButton Server: Follow the minimum requirements outlined here.
External Postgres Database:
- 2 CPU Cores
- 2 GB Memory
- 20 GB Disk Space (sufficient for tens of thousands of recordings)
External Redis Cache:
- 2 CPU Cores
- 0.5GB Memory
- Persistence enabled
BigBlueButton Scalelite for Scaling
Setting up Scalelite demands advanced technical knowledge, including experience with setting up and administering a BigBlueButton server, Linux server, Docker containers, the BigBlueButton API, and Linux firewalls, among others.
When scaling your BigBlueButton system using Scalelite, bear in mind the ultimate objective is to offer a seamless and efficient online learning experience for all users. With proper understanding of the infrastructure and appropriate technical expertise, Scalelite can significantly enhance the management of your BigBlueButton servers, making your online classrooms more reliable and scalable.
It’s worth noting that HigherEdLab.com simplifies this process for you by offering BigBlueButton hosting with integrated features, excellent video quality, interactive tools, and superior user management.
With HigherEdLab.com, you get to focus on creating a vibrant learning space while they handle the technical details.