Skalerbar BigBlueButton-hosting forklaret: Fra enkeltserver til intelligente klynger

Et dybt dyk ned i videokonferenceinfrastruktur: Forstå skiftet fra monolitiske servere til selvhelende, højtilgængelige klynger.


BigBlueButton har etableret sig som den førende open source-løsning til virtuelle klasseværelser og konferencer. Men efterhånden som organisationer vokser, rammer de uundgåeligt en 'performance wall'. Spørgsmålet ændres fra 'Hvordan installerer jeg det?' til 'Hvordan hoster jeg stabilt 2.000 samtidige brugere?'

Skalering af BigBlueButton handler ikke blot om at tilføje mere CPU-kraft til én maskine (vertikal skalering); det kræver en grundlæggende ændring i arkitekturen (horisontal skalering). Nedenfor forklarer vi de tre faser i hostingens udvikling.

01

Enkeltserver-opsætningen

I en standard 'monolitisk' installation ligger alle komponenter på én fysisk eller virtuel maskine. Det omfatter HTML5-klienten, Kurento/MediaSoup-medieserveren, Redis og whiteboard-databasen.

Analogien: En lille café

Tænk på en enkelt server som en kvarterscafé med én barista. Den fungerer perfekt for 50 til 200 kunder. Betjeningen er hurtig og direkte. Men hvis 500 mennesker forsøger at komme ind på én gang, når køen ud af døren, bestillinger bliver blandet sammen, og systemet går i sneglefart.

Teknisk flaskehals: Node.js, som driver BigBlueButtons HTML5-klient, er enkeltrådet. Selv hvis du har en 64-kernet server, kan ét møde med for mange brugere mætte hovedtråden og give forsinkelser for alle. Typisk ligger den praktiske grænse på 200-300 samtidige brugere pr. server.
02

Open source-klyngen: Scalelite

For at omgå enkeltserver-begrænsningen udviklede fællesskabet 'Scalelite'. Scalelite er en load balancer, der sidder mellem din frontend (Moodle/Greenlight) og en pulje af BigBlueButton-servere.

Sådan fungerer Scalelite

Scalelite bygger på en kompleks stak med en PostgreSQL-database til at spore møder og Redis til caching. Den forespørger periodisk de registrerede servere for at tjekke deres CPU-belastning og antal brugere. Når en ny mødeanmodning kommer ind, dirigerer Scalelite den til den mindst belastede server.

  • Horisontal skalering: Du kan teoretisk føje et uendeligt antal servere til puljen.
  • Optagelsesmareridtet: En stor udfordring med Scalelite er håndteringen af optagelser. Fordi møder er spredt ud over forskellige servere, skal du opsætte komplekse delte lagringssystemer (NFS eller S3) for at samle optagelserne. Hvis en server fejler, før optagelsen er overført, går data ofte tabt.
Analogien: Hotelreceptionisten

Scalelite fungerer som en hotelreceptionist. Gæster ankommer til skranken, og receptionisten tildeler dem et værelse (server). Men at holde styr på 'hittegods' (optagelser) fra hundreder af forskellige værelser bliver en logistisk udfordring.

Begrænsningen: Scalelite ændrer API-anmodninger, før de sendes videre til serverne. Det bryder ofte kompatibiliteten med specifikke tredjepartsintegrationer, som forventer en direkte forbindelse til en standard BigBlueButton-API.
03
Anbefalet løsning

Næste niveau: bbbserver Intelligent Balancing

Hos bbbserver har vi erkendt begrænsningerne ved standard Scalelite-opsætninger. Vi har bygget en proprietær load balancing-arkitektur designet til maksimal stabilitet, hygiejne og gennemsigtighed.

Løst: Indsamling af optagelser

Vi har fuldstændig elimineret problemet med 'manglende optagelser', som ses i standardklynger. Vores system høster, behandler og centraliserer automatisk optagelser fra alle noder uden skrøbelige NFS-mounts. Du får ét, pålideligt arkiv til alle dine data.

24-timers geninstallationscyklus

BigBlueButton-servere samler 'digitalt støv' – midlertidige filer og hukommelseslækager – over tid. Vores unikke 'Fresh Start'-protokol tømmer automatisk servere og geninstallerer softwaren fuldstændigt hver 24. time. Du får i praksis en helt ny server hver eneste dag.

100% API-kompatibilitet

I modsætning til Scalelite, som kan maskere API-funktioner, tilbyder vores intelligente balancer 100% pass-through-kompatibilitet. Uanset om du bruger et brugerdefineret Moodle-plugin, et virksomheds-LMS eller et specialiseret script, fungerer det præcis, som hvis det var tilsluttet en enkelt server.

Selvhelende infrastruktur

Hvis en node rapporterer en Kurento-fejl eller lydforsinkelse, isolerer vores system den straks, sætter den i vedligeholdelsestilstand og starter en erstatning op inden for få minutter. Ingen manuel indgriben nødvendig.

Analogien: Det selvrensende luksusresort

Forestil dig et resort, hvor værelset ikke bare bliver gjort rent, efter at hver gæst er rejst — det bliver fuldstændig renoveret. Conciergen (vores Load Balancer) sørger også for, at al gæstebagage (optagelser) automatisk transporteres til hovedlobbyen, så der aldrig bliver efterladt noget på værelserne.

Ofte stillede spørgsmål om skalering

En genstart rydder hukommelsen (RAM), men den retter ikke konfigurationsafvigelser, korrupte midlertidige filer eller opdaterede pakkeafhængigheder. En fuld geninstallation sikrer, at softwarestakken er identisk med vores "Golden Image", hvilket eliminerer 99 % af "tilfældige" fejl.

Nej. I modsætning til selvhostede Scalelite-opsætninger, hvor du skal håndtere NFS-mounts og overførselsscripts, håndterer bbbserver hele livscyklussen. Vi indsamler rådata, behandler optagelsen og leverer den til dig sømløst.

Absolut. Da vores system er 100 % API-kompatibelt, er migrering som regel lige så enkel som at ændre "Base URL" og "Secret" i dit LMS eller din frontend-applikation.

Oplev stabiliteten ved en "frisk" server

Stop med at bekymre dig om load balancing-konfigurationer, databasesynkronisering og API-konflikter. Skift til bbbserver for et administreret, selvhelende klyngemiljø.

Se planer og priser