Skip to main content

BBBLB: BigBlueButton Load Balancer

BBBLB (BigBlueButton Load Balancer) is a modern load balancer for BigBlueButton. It is designed to provide a secure, scalable, and robust way to scale BBB beyond single-server installations, enabling organizations to distribute meetings across many BBB servers or offer managed BBB hosting services on shared hardware.

:warning: BBBLB is used in production, but still a very new project that may have some rough edges. Some APIs or features may not be stable yet and upgrades may break things. If you are looking for a stable solution that just works, better wait for the 1.0 release. But if you know what you are doing, go ahead and give it a try.

Documentation

Documentation can be found at https://bbblb.readthedocs.io/ or in the ./docs/ folder. Pull requests are very welcome! Join the Matrix chat if you have any questions or feedback.

Features

  • Multi-Tenancy: Allow multiple front-end applications or customers to share the same BigBlueButton cluster while keeping their meetings and recordings strictly separated.
  • Advanced Loadbalancing: Meetings are distributed based on current and predicted utilization, taking common usage patterns into account.
  • Recording Management: Recordings are transferred to central storage with a robust post_publish.rb script installed on each BBB backend server. This script just needs to sit in the correct directory, it does not require any configuration, ssh access or shared network file system to work.
  • Callback Relay: Callbacks registered for a meeting are properly relayed between the back-end BBB server and the front-end application with a robust retry-mechanism.
  • Protected Recordings: Experimental support for single-use recording links to prevent recording link sharing.
  • Management CLI and API: BBBLB comes with a rich command line tool to fetch health information, manage tenants, servers or recordings, or automate maintenance tasks.
  • Scalability: BBBLB is a modern async python application with low overhead and can easily scale to large clusters with thousands of active meetings.

Architecture

BBBLB acts as a central API gateway, intelligently routing API requests and distributing meetings across a scaleable pool of BigBlueButton instances. For the front-end application, BBBLB looks like a single BigBlueButton server.

---
config:
  look: handDrawn
  theme: neutral
---
graph TD
    Clients("Clients / Apps
    e.g. Moodle")
    BBBLB["BBBLB (Loadbalancer)"]
    
    subgraph Cluster [BBB Server Pool]
        BBB1[BBB Server 1]
        BBB2[BBB Server 2]
        BBBN[BBB Server N]
    end

    %% Define Flow
    Clients -->|BBB API| BBBLB
    BBBLB -->|BBB API| BBB1
    BBBLB -->|BBB API| BBB2
    BBBLB -->|BBB API| BBBN

Recordings are stored and managed centrally on the BBBLB server, separated by tenant, which allows you to remove or replace BigBlueButton servers without losing access to past recordings. Callbacks or webhooks are relayed though BBBLB back to your front-end application.

Rolling cluster upgrades without downtime are also fully supported. With bbblb server disable you can disable some of your back-end servers without interrupting running meetings, --wait for them to drain empty, then perform your maintenance tasks and enable the servers again when ready.

Sponsors

License

BBBLB - BigBlueButton Load Balancer
Copyright (C) 2025, 2026  Marcel Hellkamp
SPDX-License-Identifier: AGPL-3.0-or-later

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

Release files for bbblb 0.0.18

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bbblb 0.0.18
File Size Uploaded
bbblb-0.0.18.tar.gz 230.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bbblb 0.0.18
File Interpreter ABI Platform
bbblb-0.0.18-py3-none-any.whl Python 3 none any Details

Total release size: 333.4 kB

Release files / bbblb-0.0.18.tar.gz

Download URL bbblb-0.0.18.tar.gz
Size 230.7 kB
Tags Source
SHA-256 checksum
How to use checksums
7771d0ecbec30ba78a925af982addf846f22011516e11d5ba1aeb2a7db59757f
BLAKE2b-256 checksum
How to use checksums
b33a68dc37fbc99af505dd8e9468829150e38d0792c545e977a4360809055f88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Linux Mint","version":"22.3","id":"zena","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / bbblb-0.0.18-py3-none-any.whl

Download URL bbblb-0.0.18-py3-none-any.whl
Size 102.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c73f056cd87d5ffadd331f196662809cc77870c8e24676f11d11aa0c546464a8
BLAKE2b-256 checksum
How to use checksums
6f01c4a48c237c11d4568473004e29b033bb8c9b6d0dd1bbd5b76c26023bf473
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Linux Mint","version":"22.3","id":"zena","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.0.18 This release

2 release files

0.0.16

2 release files

0.0.15

2 release files

0.0.14

2 release files

0.0.13

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page