BizTalk Architektur (zur Ausführungszeit)

  1. BizTalk empfängt Nachrichten über den Receive Port. Ein Receive Port kann mehrere Receive Locations haben, welche Nachrichten von verschiedenen Adaptern (Datei, FTP, SQL, Web Service, usw) entgegennehmen.
  2. Nach dem die Nachricht entgegengenommen wurde wird sie in der Receive Pipeline in XML umgewandelt, sofern die Nachricht ein anderes Format hat. (Innerhalb von BizTalk wird nur mit dem XML-Format gearbeitet.)
  3. Das Mapping nach der Receive Pipeline ist optional und wird nur dann angewendet wenn die Nachricht vor der weiteren Verarbeitung formell verändert werden muss. Das Mapping wird auf dem Receive Port konfiguriert.
  4. Die XML-Nachricht wird in die MessageBox Datenbank geschrieben.
  5. BizTalk legt Nachrichten in der MessageBox Datenbank ab. Während der Weiterverarbeitung bleiben die Nachrichten in der Datenbank. So wird sichergestellt, dass keine Nachrichten während der Verarbeitung verloren gehen können. Die Nachrichten in der MessageBox können von zwei möglichen Abonnenten abgeholt werden: einer Orchestration oder ein Send Port
  6. Wenn eine Orchestartion die Nachricht aus der MessageBox abonniert hat startet der Geschäftsprozess-Ablauf.
  7. Nach dem durchlaufen der Geschäftslogik in der Orchestration wird die Nachricht an ein Ziel (Send Port) geschickt oder es werden aus der Orchestration neue Nachrichten erzeugt die ebenfalls wieder in die MessageBox Datenbank abgelegt werden.
  8. Wenn ein Send Port die Nachricht abonniert hat wird die Nachricht an den Send Port geschickt und wenn nötig wird wiederum ein Mapping durchgeführt um die Nachricht aus der MessageBox Datenbank in das gewünschte Ausgabeformat umzuwandeln. Diese Transformation kann entweder im Send-Port oder in der Orchestration durchgeführt werden.
  9. Die Send Pipeline bereitet die Nachricht vor, so dass sie an das gewünschte Ziel gesendet werden kann. Dieser Arbeitsschritt wird auf dem Send Port definiert. Die Send Pipeline nimmt eine Nachricht entgegen und erzeugt daraus ein Nachricht die anschliessend gesendet wird. Dabei kann zum Beispiel das Encoding oder das Format verändert werden oder die XML-Nachricht wird in ein Flat-File umgewandelt.
  10. Der Send Port enthält die Verbindungsinformationen vom Zielsystem die bekannt sein müssen um die Nachricht ans Ziel senden zu können. Ausserdem besteht der Send Port aus der Send Pipeline und dem Send Adapter. Für einen Receive Port können mehrere Send Ports definiert werden um die Nachricht an mehrere Zielsysteme zu senden.