Spring-Integration - eingehende und ausgehende Channel-Adapter

7

Was ist der grundlegende Unterschied zwischen Channels für eingehende und ausgehende Channels?

Jedes Beispiel wäre sehr hilfreich.

Ich habe die Spring-Dokumente gelesen und diese "direktionale" Unterscheidung ist mir nicht klar. Ich unterstütze eine Anwendung, die einen Outbound-Channel-Adapter konfiguriert hat, aber ich finde den Verhaltenszähler intuitiv mit dem outbound Label. Dieser Adapter ruft eine externe Datei ab, dann bringt ihn in die Anwendung, in der wir die Datei analysieren und die Daten persistieren.

Dies ist ähnlich wie diese Frage, aber ich wollte Konzentriere dich generell auf Kanaladapter und erhalte hoffentlich mehr Feedback!

Danke!

    
The Gilbert Arenas Dagger 01.05.2015, 15:13
quelle

2 Antworten

19

Kanaladapter sind für die Einweg-Integration (Gateways sind bidirektional).

Konkret sind eingehende Adapter am Anfang eines Flusses, abgehende Adapter beenden einen Fluss. Flüsse werden typischerweise gerendert (und konzeptionell als von links nach rechts fließend betrachtet) ...

%Vor%

(wobei -> für einen Kanal steht).

Es gibt zwei Arten von eingehenden Kanaladaptern:

  • MessageProducer s
  • MessageSource s

MessageProducer s werden als "nachrichtengesteuert" bezeichnet, d. h. sie erzeugen einseitig vollständig asynchrone Nachrichten, sobald sie gestartet werden; Beispiele sind der JMS-Nachrichten-gesteuerte Adapter, der TCP-Kanaladapter für eingehende Nachrichten, der IMAP-Idle-Kanaladapter (Mail-Kanaladapter) usw.

MessageSource s werden dagegen abgefragt - ein poller mit einem Trigger veranlasst das Framework, die Quelle nach einer Nachricht zu fragen; Der Trigger kann auf einer festen Rate, Cron-Ausdruck usw. sein. Beispiele sind die (S) FTP-Adapter, Mail-Inbound-Adapter (POP3. IMAP).

Beispiele für ausgehende Adapter sind Mail Outbound Adapter (SMTP).

Gateways sind zweiseitig (Anfrage / Antwort).

In Inbound-Gateways sendet ein externes System eine Anfrage und Spring Integration antwortet.

Bei Outbound-Gateways werden die Anfragen von Spring Integration und einige externe Systemantworten beantwortet.

Ich hoffe, das macht die Dinge klar.

    
Gary Russell 01.05.2015, 17:54
quelle
3

hinein und heraus sind relative Richtungen, es muss eine Basis haben. im Frühjahr Integration, die Basis ist die Spring-Integration Framework (das kann als ein Nachrichten-Bus aussehen), die Adapter setzen Nachricht in sie sind in, die Adapter nehmen die Nachricht raus aus sind out.

    
Andrew Xie 15.05.2015 06:01
quelle