Teilen über


Testszenarien zum Messen des maximalen dauerhaften Durchsatzes der Engine

In diesem Abschnitt wird ein Testszenario beschrieben, mit dem gemessen wird, welche Auswirkungen drei unterschiedlichen Lastniveaus auf ein BizTalk-System haben:

Wichtig

Der Leser sollte sich bewusst sein, dass die in diesem Abschnitt enthaltenen Informationen den zum Zeitpunkt der Veröffentlichung aktuellen Stand bei Microsoft bezüglich der hier diskutierten Punkte wiedergeben. Da Microsoft auf sich ändernde Marktbedingungen und Technologien reagieren muss, kann die Richtigkeit der hier angegebenen Informationen nur für den Zeitpunkt der Veröffentlichung garantiert werden.

Testsystemkonfiguration

Für dieses Testszenario wurde folgende Hardware verwendet:

  • Sechs BizTalk-Server. Jeder mit dualen 3 GHz-Prozessoren und 2 GB RAM ausgestattet. Jeder Server arbeitet mit lokalen Festplatten. Zwei der BizTalk Server-Computer sind mit einer Instanz des Empfangshosts, zwei weitere mit einer Instanz des Sendehosts und die letzten zwei mit einer Instanz des Hosts zum Verarbeiten von Orchestrierungen konfiguriert.

  • Ein SQL Server für die master MessageBox-Datenbank und die Nicht-MessageBox-Datenbanken. Ausgestattet mit acht 2 GHz-Prozessoren und 4 GB RAM. Dieser Server ist über Glasfaser mit einem schnellen SAN-Datenträgersubsystem (Storage Area Network) verbunden. Die Nachrichtenveröffentlichung ist deaktiviert.

  • Drei SQL Server für die Messagebox-Datenbanken, die in veröffentlicht werden. Ausgestattet mit vier 2 GHz-Prozessoren und 4 GB RAM. Diese Server sind jeweils über Glasfaser mit einem schnellen SAN-Datenträgersubsystem verbunden. Die Daten- und Transaktionsprotokolldateien für die MessageBox-Datenbank befinden sich separaten SAN-LUNs (Logical Unit Numbers, LUNs).

  • Laden Sie den Treiberclientcomputer. Ausgestattet mit dualen 3 GHz-Prozessoren und 2 GB RAM. Mit diesem Server wurde die Last zum Testen des BizTalk-Systems generiert.

    Die für Belastungstests verwendete Topologie ist im Folgenden veranschaulicht.

    Für Belastungstests verwendete Topologie

    Hardwaretopologie für BizTalk Server Auslastungstests

Das Testszenario

Das Testszenario ist sehr einfach. Das Lastgenerierungstool, LoadGen 2007, wurde auf dem Lasterzeugungsserver installiert und zum Senden von Dateikopien an Dateifreigaben verwendet, die vom Dateiadapter überwacht werden. Das Lastgenerierungstool verteilt Kopien der Eingabeinstanzdatei gleichmäßig auf die Dateifreigaben.

Hinweis

Laden Sie LoadGen herunter. Informationen zur Verwendung von LoadGen mit dem MSMQ-Adapter finden Sie unter Verwenden von LoadGen 2007 mit MSMQ.

Der BizTalk-Dateiadapter ist zum Überwachen der Dateifreigaben und Veröffentlichen der Nachrichten in die MessageBox konfiguriert. Eine einfache Orchestrierung, die nur eine Form vom Typ Empfangen und eine Form vom Typ Senden enthält, abonniert die veröffentlichte Nachricht. Nachrichten, die von der Orchestrierung erneut in der MessageBox-Datenbank veröffentlicht werden, werden von einem Dateisendeport abgerufen und an eine auf dem SAN definierte, gemeinsame Freigabe gesendet. Dateien, die auf der SAN-Ausgabefreigabe eingehen, werden sofort gelöscht, um bei langen Testläufen eine Ansammlung von Dateien auf dieser Freigabe zu vermeiden.

Für das Szenario wurden vier Hosts definiert, je einer für den Empfangsspeicherort, die Orchestrierungen, den Sendeport und zur Überwachung. Um das Verhalten der Engine bei Rückständen beobachten zu können, wurde die Überwachung während der Testläufe deaktiviert. Die Überwachung ist standardmäßig nur für Pipelines und Orchestrierungen aktiviert und wurde daher in der BizTalk-Verwaltungskonsole für die verwendete Pipeline und Orchestrierung ausdrücklich deaktiviert.

Es wurden keine Instanzen des Überwachungshosts erstellt, da die Überwachung deaktiviert wurde, um die Hauptverhaltensweisen der MessageBox bei diesen Tests zu isolieren.

Es wurde ein einfaches Schema verwendet, und die für den Test verwendeten Instanzdateien hatten alle eine Größe von 10 KB. Für eingehende Dokumente wurde die Pipeline "XMLReceive" verwendet. Um das Testszenario möglichst einfach zu gestalten und das Verhalten der MessageBox-Datenbank in den Vordergrund zu stellen, wurden keine Zuordnungskomponenten und auch keine ausgehenden Komponenten verwendet.

Im Test gemessene Parameter

In diesem Test wurden folgende Parameter gemessen:

Gemessene primäre Testparameter

Bei den folgenden Parametern handelt es sich um die beim Messen des maximalen dauerhaften Durchsatzes verwendeten primären Indikatoren:

  • Das MessageBox-Backlog, gemessen durch den SpoolGröße-Leistungsindikator , der mit dem Leistungsobjekt BizTalk:MessageBox:General Counters verfügbar ist. Dieser Rückstand ist ein wichtiger Indikator für die Nachhaltigkeit. Es ist offensichtlich, dass der Rückstand in der MessageBox-Datenbank nicht unbegrenzt anwachsen kann, ohne irgendwann Probleme zu verursachen. Daher wird die Nachhaltigkeit anhand der im Zeitverlauf überwachten Tiefe des Rückstandes in der MessageBox-Datenbank bewertet.

    Die MessageBox-Tabelle mit dem Namen spool enthält einen Datensatz für jede Nachricht im System (aktiv oder auf die Garbage Collection wartend). Sie können den maximalen dauerhaften Durchsatz ganz einfach messen, indem Sie die Anzahl der Zeilen in dieser Tabelle und die Anzahl der pro Sekunde eingegangenen Nachrichten überwachen, während Sie gleichzeitig die Systemlast erhöhen. Diese Messung wird auch als Spooltabellentiefe oder Spooltiefe bezeichnet.

  • Die Anzahl der pro Sekunde empfangenen Dokumente gemäß dem Leistungsindikator Empfangene Dokumente/Sekunde , der mit dem BizTalk:Messaging-Leistungsobjekt verfügbar ist.

    Gemessene sekundäre Testparameter

    Bei den folgenden Parametern handelt es sich um die sekundären Indikatoren, die beim Messen des maximalen dauerhaften Durchsatzes bewertet werden können: Diese Parameter können sich auf die primären Indikatoren der Spooltiefe und die Anzahl der pro Sekunde eingegangenen Dokumente auswirken.

  • Die Leerlaufzeit des physischen Datenträgers für den MessageBox-Daten- und Transaktionsdateidatenträger, gemessen anhand des Zählers %Leerlaufzeit , der mit dem Leistungsobjekt LogicalDisk verfügbar ist.

  • Die CPU-Auslastung (%) für den MessageBox-Server, gemessen am Zähler %Processor Time , der mit dem Prozessorleistungsobjekt verfügbar ist.

  • Die Sperrtimeouts pro Sekunde für die MessageBox-Datenbank, gemessen am Zähler für Sperrtimeouts/s , der mit dem Leistungsobjekt SQLServer:Locks verfügbar ist.

  • Die Zeit in Sekunden für die letzte Ausführung des SQL Agent-Auftrags, der die Tabellen der MessageBox-Datenbank bereinigt, die zu entfernten Nachrichten gehören. Dies wird durch den MsgBox Msg Cleanup(Purge Jobs) -Zähler gemessen, der mit dem Leistungsobjekt BizTalk:MessageBox:General Counters verfügbar ist.

  • Die Zeit in Sekunden für die letzte Ausführung des SQL Agent-Auftrags, der die Tabellen der MessageBox-Datenbank bereinigt, die zu entfernten Nachrichtenteilen gehören. Dies wird durch den Leistungsindikator MsgBox Parts Cleanup(Purge Jobs) gemessen, der mit dem Leistungsobjekt BizTalk:MessageBox:General Counters verfügbar ist.

    Beim Ausführen von Tests zur Ermittlung des maximalen dauerhaften Durchsatzes wurde die Eingabelast bis zu dem Punkt erhöht, an dem die Spooltabelle unbegrenzt anzuwachsen begann.

Hinweis

Wenn es Ihnen nicht gelingt, eine Last zu generieren, die ein unbegrenztes Anwachsen der Spooltabelle zur Folge hat, bedeutet dies lediglich, dass der langsamste Teil des Systems auf der Empfangsseite und nicht auf der Verarbeitungs-/Sendeseite liegt.

Nächste