Die MessageBox-DatenbankThe MessageBox Database

Das Herzstück der Veröffentlichungs-/Abonnement-Engine in Microsoft BizTalk Server ist die MessageBox-Datenbank.The heart of the publish/subscribe engine in Microsoft BizTalk Server is the MessageBox database. Die MessageBox-Datenbank besteht aus zwei Komponenten: eine oder mehrere Microsoft SQL Server-Datenbanken und die Messaging-Agent.The MessageBox is made up of two components: one or more Microsoft SQL Server databases and the Messaging Agent. SQL Server-Datenbank bietet einen Persistenzspeicher für viele Elemente, darunter Nachrichten, Nachrichtenteile, Nachrichteneigenschaften, Abonnements, der Status der Orchestrierung, Überwachungsdaten, hostwarteschlangen für das routing und andere.The SQL Server database provides the persistence store for many things including messages, message parts, message properties, subscriptions, orchestration state, tracking data, host queues for routing, and others. BizTalk Server-Gruppe möglicherweise eine oder mehrere MessageBox-Datenbanken, in dem Veröffentlichen der Nachrichten, und aus dem entsprechenden Abonnenten abgerufen werden.The BizTalk Server group may have one or more MessageBox databases into which it publishes messages and from which subscribers to those messages extract messages.

Die Datenbank stellt einen Teil der Logik für das Weiterleiten von Nachrichten und Ausführen von Abonnements.The database provides some of the logic related to routing messages and fulfilling subscriptions. Der Nachrichtenagent ist jedoch die Komponente, die kapselt und die Datenbankkomponente abstrahiert und ist die Schnittstelle, die von BizTalk Server für die Interaktion mit der MessageBox-Datenbank verwendet.The Message Agent, however, is the component that encapsulates and abstracts the database component and is the interface used by BizTalk Server to interact with the MessageBox. Der Nachrichtenagent ist eine Komponente von Component Object Model (COM), die Schnittstellen bereitstellt, für die Veröffentlichung von Nachrichten abonnieren der Nachrichten, Abrufen von Nachrichten und So weiter.The Message Agent is a Component Object Model (COM) component that provides interfaces for publishing messages, subscribing to messages, retrieving messages, and so on. Diese Schnittstelle ist der einzige Mechanismus, der von anderen BizTalk Server-Komponenten, einschließlich der Adapterframework und Orchestrierungen, die für die Interaktion mit der MessageBox-Datenbank verwendet.This interface is the only mechanism used by other BizTalk Server components, including the adapter framework and orchestrations, to interact with the MessageBox.

Die MessageBox-Datenbank und der MeldungThe MessageBox and the Message

Eine MessageBox-Datenbank-Abonnements ist ein Satz festgelegter Informationen und Dienstinformationen.A MessageBox database subscription is a set of established information and service information. Die festgelegten (oder Prädikats-) Informationen ist die Kriterien, die eine Nachricht erfüllen muss.The established (or predicate) information is the criteria that a message must meet. Die Dienstinformationen wird Sie mit der Meldung, die die Kriterien erfüllt.The service information is what to do with the message that meets the criteria. Alle diese Informationen werden in einem Satz von Tabellen, die die Messaging- und Orchestrierungs-Engine aufrufen gespeichert.All of this information is stored in a set of tables that call the messaging and orchestration engine.

Wenn BizTalk Server eine Nachricht empfängt, verarbeitet die Nachricht in einer Pipeline, und verschiebt die Nachricht in der MessageBox-Datenbank.When BizTalk Server receives a message, it processes the message in a pipeline, and places the message in the MessageBox database. Die eingehende Nachricht hat einen Kontext an.The incoming message has a context. Der Nachrichtenkontext ist eine Gruppe von Eigenschaften der Nachricht zugeordnet.The message context is a set of properties associated with the message. Die drei Typen von Nachrichtenkontexteigenschaften sind:The three types of message context properties are:

  • Einfache geschriebene EigenschaftenSimple written properties

  • Höher gestufte EigenschaftenPromoted properties

  • PrädikateigenschaftenPredicate properties

    Die Prädikat- und höher gestuften Nachrichteneigenschaften geben den Geschäftsprozess, der diese Nachricht abonniert hat, und gibt an, ob der Geschäftsprozess die erforderlichen Berechtigungen für die Nachricht empfangen hat.The promoted and predicate message properties indicate the business process that subscribes to this message, and whether the business process has the permissions necessary to receive the message.

    Wenn ein Geschäftsprozess diese Nachricht abonniert, sendet die MessageBox-Datenbank die Nachricht an den Geschäftsprozess.If a business process subscribes to the message, the MessageBox database sends the message to the business process. Wenn der Geschäftsprozess die Nachricht empfängt, wird die Nachricht auf einer verfügbaren Hostinstanz verarbeitet.When the business process receives the message, it processes the message on an available host instance. Wenn der Geschäftsprozess eine Pipeline abonniert oder einen Sendeport, sendet der Geschäftsprozess nach der Verarbeitung der Nachricht eine Antwortnachricht an die MessageBox-Datenbank.After processing the message, if the business process subscribes to a pipeline or send port, the business process sends a return message to the MessageBox database.

    Für jeden BizTalk-Host unterhält die zugehörige MessageBox eine Warteschlange und die Warteschlange "angehalten" ein.For each BizTalk Host, the associated MessageBox has one work queue and one suspended queue. Darüber hinaus enthält jede MessageBox-Datenbank einen Satz von Tabellen für die statischen und dynamischen instanzzustand.Additionally, each MessageBox database contains a set of tables for static states, dynamic states, and instance state. Weitere Informationen zu BizTalk-Hosts finden Sie unter Entitäten.For information about BizTalk Hosts, see Entities.

Wichtig

Wenn ein Host ausfällt – z. B. die MessageBox-Datenbank, die Nachrichten von diesem Host empfängt nicht mehr verfügbar ist, die alle anderen MessageBox-Datenbanken sind nicht mehr verfügbar.If a host becomes unavailable --for example, the MessageBox database that receives messages from that host becomes unavailable, all other MessageBox databases become unavailable.

Erstellen Sie die erste MessageBox-Datenbank, wenn Sie den Konfigurations-Assistenten ausführen.You create the first MessageBox database when you run the Configuration Wizard. Die MessageBox-Datenbank, die konfiguriert ist, wird der master-MessageBox-Datenbank.The MessageBox database that is configured becomes the master MessageBox database. MessageBox-Masterdatenbank wertet und Abonnements an alle anderen MessageBox-Datenbanken in der BizTalk Server-Umgebung weitergeleitet.The master MessageBox database evaluates and routes subscriptions to all other MessageBox databases in the BizTalk Server environment. Weitere Informationen zum Verbessern der Leistung für die MessageBox-Masterdatenbank, finden Sie unter Verwalten von MessageBox-Datenbanken.For information about improving performance for the master MessageBox database, see Managing MessageBox Databases.

Wichtig

Sie müssen SQL Server-Clustern zum Bereitstellen von Failover-Schutz für die MessageBox-Datenbanken verwenden.You must use SQL Server clustering to provide failover protection for MessageBox databases.

Angehaltene Nachrichten in der MessageBox-DatenbankSuspended Messages in the MessageBox Database

BizTalk Server speichert mit angehaltenen Pipelines in der MessageBox-Datenbank verknüpfte Nachrichten.BizTalk Server stores messages associated with suspended pipelines in the MessageBox database. Wenn ein Fehler in der Pipeline auftritt, hält BizTalk Server die Instanz einer Nachricht an.If a failure occurs in the pipeline, BizTalk Server suspends the instance of a message. Es gibt zwei Arten von angehaltenen Dienstinstanzen:There are two types of suspended service instances:

  • Angehaltene Instanzen, die fortgesetzt werden kann.Suspended instances that you can resume.

  • Angehaltene Instanzen, die nicht fortgesetzt werden können.Suspended instances that you cannot resume. Wenn eine Instanz beispielsweise beschädigt werden.For example, if an instance is corrupt.

    Je nach Ursache des Anhaltens können Sie möglicherweise auf die Dienste fortsetzen, die BizTalk Server hält an – beispielsweise wenn eine Orchestrierung auf eine Form "Anhalten" trifft oder wenn ein Transport eine Nachricht nicht zustellen konnte, BizTalk Server nicht automatisch angehaltene entfernt Instanzen, die aus der MessageBox-Datenbank nicht fortgesetzt werden können.Depending on the cause of the suspension, you may be able to resume services that BizTalk Server suspends -- for example, if an orchestration hits a Suspend shape, or if a transport was unable to deliver a message, BizTalk Server does not automatically remove suspended instances that you cannot resume from the MessageBox database. Sie können auch eine Dienstinstanz auf der Festplatte zu speichern, bevor Sie ihn aus der Warteschlange "angehalten" entfernen.You can choose to save a service instance to disk before removing it from the suspended queue.

    Informationen zum Sichern von MessageBox-Datenbanken finden Sie unter sichern und Wiederherstellen von BizTalk Server-Datenbanken.For information about backing up MessageBox databases, see Backing Up and Restoring BizTalk Server Databases.

Siehe auchSee Also

Die Messaging-EngineThe Messaging Engine