2016-08-05 44 views
0

Vielleicht eine dumme Frage, aber lesen Sie weiter über SI "Lightweight Messaging in Spring-basierten Anwendungen". Ich möchte wissen, wie (wenn) SI intern Messaging verwendet. Wenn ich eine SI (Boot) -Anwendung starte (eine, die AMPQ nicht benötigt ... auch bekannt als Messaging-Unterstützung), muss ich keinen Rabbit-Server betreiben. Aber von dem, was ich erfahre, verwendet SI Nachrichten intern. Wie wird das erreicht? Ich kann keinen Hinweis darauf finden, & welche Infrastruktur erforderlich ist, um dies zu ermöglichen. Vielen Dank!Wie funktioniert die "interne" Nachrichtenintegration von Spring Integration?

Antwort

0

Die Nachrichten sind einfach Java-Objekte (o.s.messaging.Message), die zwischen Komponenten übergeben werden. Es ist kein externer Broker erforderlich, es sei denn, Sie benötigen Persistenz.

Ich schlage vor, Sie lesen Mark Fishers Buch (Spring Integration in Action) und/oder die reference manual.

0

Bei der Nachrichtenintegration innerhalb der Federintegration handelt es sich um In-Memory-Java-Objekte, die über Kanäle/Warteschlangen von einem Dienst an einen anderen übertragen werden. Es bietet einen Mechanismus zum Definieren des Ablaufs und der Reihenfolge der Verarbeitung, wobei auch jeder Wartungsschritt isoliert ausgeführt werden kann. Die Sprungintegrationswarteschlange ist möglicherweise eine Implementierung der java.util.Queue-Schnittstelle. Es unterscheidet sich von kommerziellen Messaging-Tools wie IBM MQ oder Active MQ, da es keine Persistenz bietet. Das heißt, wenn Sie den JVM-Modus beenden oder der App-Prozess gestoppt wird, gehen alle Nachrichten in der Spring-Warteschlange/im Spring-Channel verloren. Eine Menge, wenn dies akzeptabel ist, wenn der Prozess in idempotent, d. H. Wenn die Anwendung kommt, kann ich den Prozess von Anfang an neu starten.