- Kommunikation
Aufbau einer skalierbaren Videoplattform
Als wir vor zehn Jahren mit dem Aufbau der Panopto-Videoplattform begannen, wollten wir sicherstellen, dass unsere Infrastruktur sowohl für On-Premises- als auch für Cloud-Hosting-Kunden eine hohe Skalierbarkeit bietet, so dass unsere Plattform bei steigender Nutzung von Panopto problemlos skaliert werden kann.
Bevor wir darüber sprechen, wie Panopto skaliert, sollten wir mit einer grundlegenden Definition von Skalierbarkeit beginnen: die Fähigkeit eines Systems, eine wachsende Menge an Arbeit in einer fähigen Art und Weise zu bewältigen, oder seine Fähigkeit, erweitert zu werden, um diesem Wachstum gerecht zu werden.
Bei einer Videoplattform bezieht sich die Skalierbarkeit auf eine Reihe von Elementen im System, z. B. auf Webserver, die skalierbar sein müssen, um steigende HTTP-Anforderungen zu bewältigen, auf Codierungsserver, die skalierbar sein müssen, wenn immer mehr Codierungsaufträge übermittelt werden, und auf die Skalierbarkeit der Daten, um eine schnell wachsende Menge an Videospeicherplatz zu bewältigen.
Panopto ist so konzipiert, dass jede dieser Komponenten sowie andere Elemente der Plattform skaliert werden können, wie in der folgenden Präsentation erläutert:
In der obigen Folienpräsentation werden vier wichtige Serverrollen genannt, aus denen Panopto besteht:
- Webserver, die IIS enthalten und eingehende HTTP-Anfragen für Live- und On-Demand-Video-Streaming bearbeiten.
- Encoder-Server, die Anfragen zur Videocodierung empfangen und verarbeiten.
- Datenbankserver, die SQL Server-Instanzen, Datendateien und Transaktionsprotokolle umfassen.
- Speicherserver, auf denen Videoinhalte gespeichert werden und die eine Vielzahl von Speichertypen unterstützen, darunter Storage Area Networks (SANs), Network Attached Storage (NAS) und Direct Attached Storage (DAS).
Für Kunden, die Panopto vor Ort einsetzen, unterstützen wir eine Reihe von Servertopologien, darunter:
- Einzelserver, bei dem alle vier Servertypen auf einem einzigen Rechner installiert sind. Dies ist oft der Ausgangspunkt für Kunden, die eine Testumgebung oder eine kleine Panopto-Installation haben.
- Zwei-Server-System, bei dem der Kodierungsserver in der Regel einen eigenen Rechner erhält, um rechenintensive Kodierungsaufträge zu bearbeiten.
- Multi-Server, bei dem sich jede der vier Serverrollen auf einem eigenen Rechner befindet und die Speicherung zentralisiert ist.
- Load-Balancing, bei dem ein Load-Balancer vor mehreren Webservern sitzt und die eingehenden HTTP-Anfragen für Live- und On-Demand-Streaming verteilt.
Kunden, die Panopto als gehosteten Dienst in der Cloud betreiben, nutzen dieselbe Codebasis und dieselben Installations-Binärdateien wie Kunden, die Panopto vor Ort einsetzen. Wir ändern lediglich die Konfiguration, um eine größere Skalierung zu ermöglichen. Insbesondere teilen wir die Serverrollen noch weiter auf, um sie einzubeziehen:
- Broadcast-Server - Ein spezialisierter "Webserver", der Live-Streaming-Anfragen verarbeitet.
- Upload-Server - Ähnlich wie Broadcast-Server, aber diese verarbeiten Upload-Anfragen für vorab aufgezeichnete Videos.
- Suchserver - Angesichts der großen Anzahl von Videosuchen auf unseren gehosteten Servern haben wir spezielle Suchserver-Cluster eingerichtet, die mit unseren Datenbankservern interagieren.
Da unsere Video-Cloud auf Amazon Web Services (AWS) basiert - insbesondere auf Amazons Elastic Compute Cloud (EC2) und Simple Storage Service (S3) - profitieren wir von der integrierten Amazon-Funktionalität, die es unserer Plattform ermöglicht, unsere Codierungsserver dynamisch auf Basis der aktuellen Nachfrage zu skalieren und unseren Speicherplatz zu vergrößern, wenn mehr Inhalte in Panopto hochgeladen werden. Durch die automatische Skalierung in der Cloud können wir sicherstellen, dass unsere Plattform effizient läuft und wir unseren Kunden niemals ungenutzte Serverzeit in Rechnung stellen.
Um die Betriebszeit und Zuverlässigkeit unserer Video-Cloud zu gewährleisten, skalieren wir Panopto auch über mehrere Amazon-Verfügbarkeitszonen - wir spiegeln unsere Serverinfrastruktur in verschiedenen Amazon-Rechenzentren an unterschiedlichen geografischen Standorten. So stellen wir sicher, dass unsere Server selbst bei einem katastrophalen Ausfall des Rechenzentrums weiterhin funktionieren und unsere Kunden die Videoplattform ohne Unterbrechung nutzen können.
Wenn Sie verschiedene Videoplattformen für Ihr Unternehmen oder Ihre Universität evaluieren, sollten Sie den Anbieter fragen, wie sie skalierbar sind - sowohl vor Ort als auch in der Cloud. Die Fähigkeit zur einfachen und dynamischen Skalierung je nach Bedarf kann für den Erfolg Ihrer Bereitstellung entscheidend sein, wie wir bei Universitäten wie Newcastle und Essex gesehen haben, die beide jedes Schuljahr Zehntausende von Videostunden aufzeichnen.
Wenn Sie Fragen zur Skalierbarkeit von Panopto haben oder besprechen möchten, wie unsere Videoplattform Ihr Unternehmen unterstützen kann, kontaktieren Sie unser Team.



