Ein Auftrag kann nicht zwischen zwei Systemen verschwinden
Wenn Sie eine Kampagne beauftragen, wird der Auftrag im selben Moment gespeichert, in dem er zur Ausführung angemeldet wird. Beides ist ein Vorgang und nicht zwei. Fällt in der Sekunde danach ein Dienst aus, ist der Auftrag trotzdem da und wird nachgeholt. Technisch heißt dieses Muster Outbox: die Meldung liegt in derselben Datenbank wie der Auftrag und wird von dort so lange erneut versendet, bis sie ankommt. Für Sie bedeutet das, dass Sie nach einer Störung nicht nachfragen müssen, ob Ihre Bestellung angekommen ist.
Ein erneuter Versand erzeugt keinen zweiten Beitrag
Damit nichts verloren geht, darf dieselbe Meldung mehrfach ankommen. Genau daraus entsteht das nächste Risiko: zweimal ausgeführt, zweimal veröffentlicht, zweimal berechnet. Deshalb merkt sich jedes Modul, welche Meldung es bereits verarbeitet hat, und gibt beim zweiten Mal dasselbe Ergebnis zurück, statt neu anzufangen. Am Ende stehen im Bericht so viele Beiträge, wie Sie beauftragt haben, und keiner mehr.
Eine Rückmeldung ist noch kein Artikel
Dass ein beteiligtes System eine Meldung angenommen hat, sagt noch nichts über den Artikel. Wir setzen einen Beitrag deshalb erst dann auf geliefert, wenn wir die Seite selbst aufgerufen und die vereinbarten Punkte geprüft haben. Bis dahin steht er als in Arbeit oder als offener Fall im Bericht, mit dem Grund daneben. Das ist unbequemer als eine schnelle Erfolgsmeldung, aber es ist die einzige Angabe, auf die Sie sich gegenüber Ihrem Kunden berufen können.