An einem schönen Sonntagabend kommt unsere Lieblingsfernsehserie mit ihrer neuesten Staffel zurück, und hier machen wir uns bereit, sie als Erstes zu konsumieren, bevor uns Spoiler erreichen. Für Konsumenten ist es so einfach geworden, ihr Telefon zu nehmen und Inhalte auf mobilen Anwendungen oder Webanwendungen zu genießen. Streaming-Medien sind mit nur wenigen Klicks und Fingertipps zugänglich. Öffne die App und drücke auf Abspielen. Einfach, schnell und sofort, oder?

Video auf Abruf und Live-Streaming-Konsum sind weltweit allgegenwärtig geworden. Jeder entfernt sich von DVDs, Kabelanbietern und ersetzt diese durch Video-Streaming-Abonnements auf Abruf. Mit diesem Boom in der Nachfrage wird konsistente hohe Leistung und Qualität ein wesentlicher Aspekt. Keine dieser On-Demand-Plattformen möchte, dass ihre Nutzer eine schlechte Erfahrung machen. Aber um sicherzustellen, dass Nutzern dieses Streaming-Medium nahtlos mit weniger Pufferung und höchster Qualität zur Verfügung steht, müssen wir diese Mediainhalte mit vielen Nutzern an verschiedenen geografischen Standorten und für lange Streaming-Zeiten Lasttests unterziehen. Selbst die kleinste Verzögerung bei Medien oder Qualität kann das Kundenerlebnis beeinträchtigen und die Nutzerbasis schließen.

 

Streaming-Medien und wichtige Metriken zum Lasttest

Lassen Sie uns zunächst die wichtigsten Metriken besprechen, die die Leistung von Streaming-Medien beeinflussen.

 

Bitrate

Die Bitrate wird üblicherweise anhand der durchschnittlich übertragenen Bytes pro Daten zum Nutzer berechnet. Eine höhere Bitrate bedeutet, dass der Nutzer Inhalte in hoher Auflösung sowohl in Audio als auch in visuellen Grafiken konsumieren kann. Manchmal kann es zu Latenzzeiten kommen, wenn der Ort, an dem die Inhalte abgerufen werden (Streaming-Media-Server), und die Nutzer geografisch weit entfernt sind, was die Gesamtbitrate beeinträchtigt.

 

Abspielrate

Die Abspielrate wird verwendet, um die Anzahl oder den Prozentsatz der Nutzer zu berechnen, die das Video tatsächlich abgespielt haben. Bei niedriger Bitrate sehen wir auch eine geringere Abspielrate. Beide Metriken gehen also Hand in Hand. Wenn Inhalte nicht innerhalb der ersten 30 Sekunden laden, schließen Nutzer in der Regel den Streaming-Dienst, was zu einem starken Rückgang der Abspielrate führt.

 

Pufferzeit

Die Pufferzeit ist die Zeit, die benötigt wird, damit Inhalte laden. Sie hängt von der Netzwerklatenz und der Download-Geschwindigkeit des Nutzers ab. Die Pufferzeit gibt an, wie lange der Nutzer warten muss, bis Inhalte geladen sind. Ein Anstieg der Pufferzeit kann das Nutzererlebnis beeinträchtigen, und der Nutzer könnte sogar aufhören, die Inhalte anzusehen, wenn eine Schwelle unterschritten wird. Pufferung kann auch beim Abspielen von Videos auftreten, normalerweise beginnt das Medium nach Abschluss der Pufferung zu spielen. Die Zeit zwischen gepufferten Inhalten und Medienwiedergabe wird Längenverzögerung genannt. Die Längenverzögerung spielt eine wichtige Rolle beim Streaming: Wenn sie zunimmt, beeinträchtigt sie die Kontinuität des Streamings.

 

Abspielzeit

Die Abspielzeit ist die Zeitspanne, die ein Nutzer mit dem Konsum der Inhalte verbringt. Sie hilft zu verstehen, wie viel Zeit ein durchschnittlicher Nutzer auf der Plattform verbringt und zeigt das allgemeine Interesse und die Erfahrung mit dem gestreamten Video. Wenn unsere Abspielzeit kürzer wird, ist es höchste Zeit, die Medieninhalte auf der Plattform zu verbessern.

 

Latenzverhältnis

Das Latenzverhältnis ist das Verhältnis der Pufferzeit zur tatsächlichen Betrachtungszeit der Inhalte durch den Nutzer. Es hilft, die Gesamtqualität der Streaming-Medien zu bewerten. Es sollte möglichst nahe bei null liegen, aber niemals null erreichen. Es wird immer eine anfängliche Verzögerung geben, doch sollten Konsistenz und Kontinuität des Streamings über lange Zeit aufrechterhalten werden, um eine längere Abspielzeit zu erzielen.

Wie wir besprochen haben, helfen diese Metriken uns zu überwachen, wie Medienanwendungen unter Last arbeiten. Sie werden auch verwendet, um die Gesamtleistung zu verbessern.

 

Warum müssen wir von verschiedenen geografischen Standorten testen?

Bevor wir beantworten, warum wir mit verschiedenen Geo-Standorten testen müssen, erklären wir auf einfache Weise, wie die Anfrage verarbeitet wird. Wenn der Nutzer auf die Abspielen-Schaltfläche klickt, wird eine Anfrage an Ihren Internetdienstanbieter (ISP) gesendet. Der ISP leitet diese an die dedizierten Server weiter, die die Website verwalten, und die Server liefern eine Antwort, die an den Computer des Nutzers zurückgesendet wird und das Ergebnis bildet. Für große Anbieter von Streaming-Medien, die Millionen von Stunden Videoinhalten über das Internet zwischen ihren Servern und allen Nutzern übertragen, wird ein viel größeres Netzwerk von Servern benötigt, um die Leistung aufrechtzuerhalten.

Aber was, wenn Ihre Nutzer in Los Angeles sitzen und versuchen, Inhalte zu streamen, die auf Servern in Asien verfügbar sind? Das erhöht die Latenz und kann die Medienleistung insgesamt beeinträchtigen. Um dieses Problem zu lösen, nutzen Streaming-Anbieter Content Delivery Networks (CDNs), die die Original-Website und deren Medieninhalte auf Hunderten von Servern auf der ganzen Welt kopieren. Wenn also zum Beispiel Nutzer sich aus Budapest anmelden, verbinden sie sich nicht mit dem Hauptserver in den Vereinigten Staaten, sondern laden eine exakte Kopie von einem CDN-Server, der Budapest am nächsten ist. Das reduziert die Latenzzeit erheblich – jene Zeit zwischen Anfrage und Antwort – und alles lädt sehr schnell.

 

Wie viele Nutzer kann mein Stream bewältigen?

 

Bevor echte Nutzer auf der Plattform sind, wollen wir das Streaming-Medium einem Lasttest unterziehen, um herauszufinden, wie groß die Nutzerbasis an verschiedenen Standorten sein kann, die unser Streaming-Medium mit der höchsten Bitrate, Abspielrate sowie der niedrigsten Puffer- und Latenzrate verarbeiten kann. Um die Nutzerzahl zu ermitteln, benötigen wir ein Skript, das mit x Anzahl von Nutzern beginnt, die das Streaming-Medium durchsuchen, und wir die Nutzerzahl schrittweise erhöhen, bis wir Verbindungsabbrüche oder einen Rückgang der durchschnittlichen Bitrate feststellen. Das Erhöhen gleichzeitiger Nutzer und das Verfolgen von Verbindungsabbrüchen liefert das Ergebnis, wie viele Nutzer unsere aktuelle Infrastruktur maximal bewältigen kann.

Die Planung und Erstellung eines Skripts, das ein annähernd reales Nutzerverhalten beim Streaming-Medium simuliert, ist ein wichtiger Teil, um genaue Ergebnisse zu erzielen. Wir benötigen auch ein spezielles Tool, das die Last erzeugt und gewährleistet, dass das Skript nicht abbricht. Wir werden uns LoadView anschauen, um den genauen Use Case zu testen und zu verstehen, wie es hilft, über 100 verschiedene Media-Streaming-Codecs zu testen.

Jetzt müssen wir diese CDN-Ausführung und Geschwindigkeit loadtesten und sehen, ob wir dadurch eine Latenz bemerken, während wir Streaming-Medien mit vielen gleichzeitigen Nutzern betreiben. Das hilft uns zu verstehen, wie sich bei einer wachsenden Nutzerbasis aus verschiedenen Nutzungsorten gegenüber dem Standort der Inhalte auf dem Server die Leistungsmetriken verändern und uns das realistischste Szenario liefern.

 

LoadView & Funktionen

 

LoadView ist eine Software-as-a-Service (SaaS)-Anwendung, die Lasttest-Werkzeuge und Support bereitstellt, um cloudbasierte Lasttests für Webseiten, Streaming-Medien, Backend-API-Server und andere komplexe Webanwendungen durchzuführen.

Um uns beim Managen und Ausführen von Leistungstests für Streaming-Medien zu helfen, stellt LoadView Infrastruktur und Testskripte zur Verfügung, um unsere Streaming-Medien einem Lasttest zu unterziehen und zu sehen, wie viele gleichzeitige Streams unsere Infrastruktur verarbeiten kann. Es unterstützt über 100 Media-Stream-Monitoring-Codecs und Medienstream-Dateiformate, die eine Vielzahl von Audio- und Videocodecs basierend auf den getesteten Medien bereitstellen.

LoadView bietet mehrere Optionen, Streaming-Medien zu testen, eine ist ein dedizierter Test, bei dem wir die Streaming-Media-URI eingeben müssen, und die andere nutzt den EveryStep Web Recorder, um sämtliche Browser-User-Sessions mit Medien aufzuzeichnen, was dem Recorder hilft, ein Skript zu erstellen, das während eines Lasttests in größerem Maßstab wieder abgespielt wird.

 

Funktionen von LoadView

 

Verbindungszeit

Es bietet Echtzeitberichte mit Zählungen von Verbindungszeitüberschreitungen, um zu zeigen, wie die Infrastruktur beim aktuellen Nutzeraufkommen reagiert.

 

Bildrate

Gibt Details wie die Bildrate an, die sicherstellen, mit welcher Geschwindigkeit die Bilder in Videos dargestellt werden und prüfen, ob sie kein Flackern oder Anzeigeprobleme verursachen.

 

Pufferzeit

Hilft uns, Werte für Absprungraten und Zuschauerzeiten in Bezug auf Pufferzeit-Grenzwerte und Warnungen zu verstehen.

 

Durchschnittliche Bytes pro Sekunde

LoadView überwacht die Bildqualität im Output unserer Streaming-Medien oder Videos und teilt Metriken wie die vom Nutzer verbrauchte Bitrate mit.

 

Streaming-Medien-Lasttest mit LoadView

 

Wie bereits erläutert, bietet LoadView zwei Optionen für Streaming-Medien-Lasttests, eine mit dedizierter Streaming-Media-URI, bei der wir eine statische Medien-URL eingeben, um den Lasttest durchzuführen, und eine weitere mit dem Skript-Recorder, der die Browser-Interaktion mit Medien in Echtzeit aufzeichnet und alle Nutzeraktionen speichert, um ein Skript zu erstellen, das für hochskalierte Lasttests genutzt wird.

Wir werden Schritt für Schritt die Einrichtung beider Optionen sowie die Durchführung von Lasttests für unsere Streaming-Medien mit LoadView besprechen, welches alle gängigen Medienstream-Dateiformate unterstützt.

 

LoadView Streaming-Medien-Konfiguration

 

Um ein Streaming-Medien-Lasttest-Skript zu erstellen, benötigen wir ein Streaming-Medien-Ziel, das wir unter starker Last validieren möchten. Wir müssen die Streaming-Medien-URL und den Protokollpfad der Medien, also den Medienressourcen-URI, eingeben. Beide werden in unseren Testszenarien spezifiziert. Die allgemeinen Schritte bei einem Streaming-Medien-Lasttest umfassen die folgenden:

 

Streaming-Medien-Konfiguration: Schritt 1

Der Benutzer gibt die Streaming-Medien-URL und den Medientyp ein.

 

Streaming-Medien-Konfiguration: Schritt 2

Basierend auf den zu testenden Medien versuchen die Lastgeneratoren, die Inhalte von der Streaming-Medien-URL abzurufen.

 

Streaming-Medien-Konfiguration: Schritt 3

Streams haben mehrere Eigenschaften wie Qualität, Codecs, Video, Audio, die vom Server abgerufen werden, und für jede Eigenschaft werden während des Tests Metriken berechnet.

 

Streaming-Medien-Konfiguration: Schritt 4

Es gibt eine Verbindungszeitüberschreitung, die im Testszenario angegeben wird. Wenn der Streaming-Medien-Server die Inhalte nicht innerhalb der festgelegten Zeit senden kann, wird ein Fehler erzeugt, der in den Testergebnissen angezeigt wird.

 

Setup für Streaming-Medien-Performance-Tests mit LoadView

Schauen wir uns die erforderlichen Schritte an, um einen Streaming-Medien-Lasttest durchzuführen.

 

Neuen Test erstellen

Öffnen Sie die LoadView-Teststartseite. Möglicherweise müssen wir auf Neuer Test klicken, um den neuen Lasttest zu erstellen.

Streaming Media Create New Load Test

 

Lasttesttyp auswählen

Wir sehen alle verschiedenen von LoadView unterstützten Lasttesttypen wie Webanwendungen, Webseiten, Streaming Media, HTTP/S und andere Optionen. Für unseren Anwendungsfall wählen wir die Option Streaming Media, um unseren Lasttest durchzuführen.

Streaming Media Select Load Testing Type

 

Streaming-Medien-Aufgabe konfigurieren

Nach der Auswahl von Streaming Media müssen wir Details zur zu testenden Anwendung wie Medientyp und Streaming-Medien-URL eingeben. Außerdem müssen wir eine Timeout-Dauer für die Anwendung eingeben. Sollte die Anwendung aus irgendeinem Grund nicht reagieren, würde LoadView das festgelegte Intervall abwarten und später den Test mit entsprechenden Fehlermeldungen beenden. Nach der Eingabe klicken wir auf die Schaltfläche Gerät erstellen.

Streaming Media Configure Task

Testszenario-Konfiguration

Nachdem das Gerät, auf dem der Lasttest ausgeführt wird, erfolgreich konfiguriert ist, werden wir zum Bildschirm Testszenario weitergeleitet, der mehrere Optionen basierend auf dem erforderlichen Testlauf bietet. Felder wie Gleichzeitige Nutzer, Anlaufzeit, Anlaufgeschwindigkeit, Aufwärmzeit und Geo-Verteilung für unseren Lasttest können auf dem Bildschirm Testszenario definiert werden. Diese Werte hängen von der Art der Anwendung ab und können je nach Lasttestanforderung eingestellt werden.

Streaming Media Test Scenario

Streaming Media Load Injector Payload

 

Streaming Media: Gleichzeitige Nutzer

Auf dem Bildschirm Testszenario müssen wir die Anzahl der gleichzeitigen Nutzer eingeben, die den Lasttest ausführen sollen. Lastinjektoren werden basierend auf der Last und der erforderlichen Anzahl gleichzeitiger Nutzer gestartet. Nach erfolgreichem Abschluss unseres Lasttests werden detaillierte Analysen und Berichte erstellt, die helfen, eventuelle Leistungsschwächen zu erkennen sowie wie sich das System während des Tests verhalten hat.

 

Verbindungszeit

Die Verbindungszeit ist der Zeitunterschied zwischen dem Start einer Streaming-Sitzung und der Wiedergabe des ersten Videobildes. Diese Zeit wird unserem bereits besprochenen Latenzverhältnis als Kennzahl hinzugefügt.

 

Dauer

Die Dauer ist die Gesamtzeit, während der der Nutzer die Inhalte konsumiert, und beschreibt auch die Zeit, die die Engine benötigt, um Inhalte zu erfassen.

 

Qualität

Die Qualität wird anhand der vom Nutzer konsumierten Bitrate berechnet und hilft, die visuelle Darstellung des gestreamten Mediums zu bewerten.

 

Bilder pro Sekunde

Bilder pro Sekunde helfen uns, die Anzahl der im Testlauf heruntergeladenen Frames zu berechnen.

 

Lasttest von Streaming-Medien mit EveryStep Web Recorder

 

Dieser Abschnitt hilft uns zu verstehen, wie wir reale Browsersitzungen mit Streaming-Medien zusammen mit üblichen Webseiteninhalten testen können. Der EveryStep Web Recorder, der mit LoadView bereitgestellt wird, kann verwendet werden, um Testszenarien basierend auf dem realen Nutzerverhalten über eine Webanwendung mit Medieninhalten zu erstellen, wobei Audio-, Video-Konsum, Abspielen/Pausieren von Videos sowie ein kompaktes oder erweitertes Video-Mediaplayer-Streaming involviert sind. Der Skript-Recorder zeichnet alle Aktionen auf und ermöglicht das erneute Abspielen der Nutzererfahrung in größerem Umfang, um realistische Leistungsergebnisse der Webanwendung zu erhalten. Der Recorder unterstützt alle führenden Browser, um uns Lasttestergebnisse für verschiedene Browser zu liefern. Wir können die von EveryStep erstellten Skripte während der Aufnahme anpassen und konfigurieren. Er ermöglicht es, skalierbar mit mehreren Webanwendungen zu arbeiten, die Flash, JavaScript, WebSockets, HTML5, Java, PHP, Ruby, Silverlight und mehr nutzen. Das Setup ist ähnlich den oben genannten Schritten, unterscheidet sich jedoch leicht bei der Verwendung des EveryStep Web Recorders. Die Schritte zum Einrichten eines Lasttests mit dem Skript-Recorder sind wie folgt:

  1. Erstellen Sie einen neuen Test in LoadView und wählen Sie die Option Webanwendungen.
  2. Wir werden zum Browser-Aufnahmefenster weitergeleitet, wo wir verschiedene Browser und Anwendungs-URLs auswählen können. Geben Sie die Anwendungsdetails ein und klicken Sie auf Aufnehmen.
  3. Sobald die Aufnahme fertig ist, können wir die Webanwendung wie ein Endnutzer durchsuchen, und der Skript-Recorder hilft uns, ein Skript zu erstellen, das später unter denselben Schritten wieder abgespielt wird.
  4. Wir können dem Skript über Rechtsklick auf die letzte Skriptzeile Verzögerungen hinzufügen. Diese Verzögerung hilft den Testszenarien, auf die Medien zu warten.
  5. Wenn wir fertig sind, klicken wir auf Skript erstellen und werden zum Bildschirm Testszenario weitergeleitet, wo wir Geo-Standorte für unseren Test sowie die Anzahl der gleichzeitigen Nutzer und Anlauf-/Ablaufgeschwindigkeiten eingeben können.

 

Streaming Media Web Application

Streaming Media Web Application Recorded Steps

 

 

Fazit: Wie man Streaming-Medien-Lasttests durchführt: Server, Skripte & mehr

Mit der jüngsten Nachfrage nach Video- und Live-Streaming-Medien und dem Traffic über diese Medien ist es eine Herausforderung für die Branchen, den besten Service und Qualität zu bieten, um im Geschäft zu bleiben. Es ist notwendig und darf nicht vernachlässigt werden, Streaming-Medien im Voraus unter Last zu setzen. Wir haben eine Schritt-für-Schritt-Anleitung betrachtet, wie man ein Testszenario erstellt und mit LoadView Lasttests für Streaming-Medienanwendungen durchführt, das umfangreiche Unterstützung für Audio-, Video-Codecs und verschiedene Medienformate bietet. Wir haben auch unterschiedliche Ansätze zum Lasttesten der Anwendung je nach Bedarf besprochen. LoadView bietet umfassenden Support für das Lasttesten von Streaming-Medieninhalten mit dem EveryStep Web Recorder und dedizierten Streaming-Media-URI-Lasttests.

Erfahren Sie mehr über das Lasttesten Ihrer Streaming-Medien und melden Sie sich für die kostenlose Testversion an, um bis zu 5 kostenlose Lasttests zu erhalten.