Freigeben über


InterAct-Adapter – Sicherstellen einer zuverlässigen End-to-End-Übermittlung

Beim Senden von Nachrichten oder Dateien an einen Empfänger wird empfohlen, sicherzustellen, dass die Nachricht oder Datei übermittelt wird und dass die darin enthaltenen Geschäftstransaktionen nicht mehr ausgeführt werden als erwartet.

Wenn beide Entitäten, die miteinander kommunizieren, einen persistenten Speicher verwenden können (z. B. bereitgestellt durch eine persistente nachrichtenorientierte Middleware und eine Schnittstellenanwendung, die sie verwendet), ist es einfach, eine zuverlässige Übermittlung zu implementieren, wenn die Art und Weise der Kommunikation der wahrgenommenen status der Nachricht standardisiert ist.

Die folgende Abbildung zeigt ein Beispiel für die Struktur des E2EControl.

End-to-End-Steuerung

Das Element im in der Abbildung gezeigten Beispiel wird innerhalb des SwInt:Request gesendet und unverändert innerhalb des SwInt:RequestHandle an die empfangende Anwendung übermittelt. Zeile 02 ermöglicht das Zuweisen eines eindeutigen Bezeichners zur Anforderung. Dieser eindeutige Bezeichner wird bei jeder nachfolgenden erneuten Übertragung derselben Anforderung wiederholt.

Die Art und Weise, wie dieser Bezeichner erstellt wird, bleibt dem Implementierer überlassen, basiert jedoch in der Regel auf einem Systemaufruf wie uuidgen(), oder es kann das Ergebnis des Berechnens eines SHA-1 für die zu sendende Anforderung sein (mit einem Präfix Sw:MsgId und ersetzen Sie sie dann durch die base64-codierte SHA-1-Zeichenfolge). Die Standard Anforderung ist, dass es global eindeutig ist (mit sehr hoher Wahrscheinlichkeit).

Sw:CreationTime ist der Zeitpunkt der Erstellung der ursprünglichen Anforderung. Es ist ein optionaler Parameter, aber es ist nützlich, um spätere Suchvorgänge für frühere Kommunikationsversuche dieser Nachricht einzuschränken.

Das Element Sw:PDIndication ist vorhanden, um anzugeben, dass dies ein zweiter oder weiterer Versuch ist, die Nachricht zu übertragen. Die empfangende Anwendung, die das E2EControl kennt, kann dann die Sw:MsgId verwenden, um zu ermitteln, ob die Nachricht empfangen wurde oder nicht. Die optionale Sw:EmissionList enthält die Zeit der vorherigen Versuche. Dieses Mal ist die Ortszeit des Absenders (in universeller Zeit), die vom Sender bei Verwendung der Sw:GetDateTime-Funktion abgerufen wird. Auch dies kann nützlich sein, um Suchvorgänge einzuschränken.

Weitere Informationen

Architektur des InterAct-Adapters
Komponenten des InterAct-Adapters
InterAct-Adapter – Nachrichtentypen für Geschäftsnachrichtenaustausch
InterAct-Adapter – Clientanwendung
InterAct-Adapter – Serveranwendung
InterAct-Adapter – Speicher- und Weiterleitungsmodus
Sicherheitsarchitektur des InterAct-Adapters
InterAct-Adapter – Statusüberwachung
InterAct-Adapter – Nichtabstreitbarkeit