2013-01-07 19 views
8

Co to jest "jednostka promocji" lub przepływ na trasie Camel Apache? Co to jest obiekt, który jest aktualnie routowany? A Message? An Exchange?Apache Camel: Co właściwie jest routowane?

Pytam bo myślał że Route składał 1+ Processor punktów końcowych, oraz że Exchange (zawierający Message) było to, co rzeczywiście zostanie poprowadzony we wszystkich punktach końcowych.

Ale wydaje się, że Exchange może mieć zarówno przychodzących i wychodzących Message się, co wskazuje, że wiadomości mogą poruszać się giełdach (w przeciwieństwie do wymiany ruchu przez przetwórców/punktów końcowych). Czy ktoś może pomóc ci wyjaśnić, dlaczego giełdy mają komunikaty przychodzące i wychodzące oraz jakie trasy przechodzą do każdego procesora/punktu końcowego?

Odpowiedz

5

Wymiana to po prostu obiekt otaczający wiadomości na jednej trasie.

Komunikaty wejściowe i wyjściowe w centrali są używane do obsługi różnych wzorców wymiany (MEP).

Zwykle jest to używane w procesorach/punktach końcowych, które zwracają odpowiedź (tj. Wzorzec żądania/odpowiedzi), w Camel nazywa się InOut. Następnie procesor/komponent odczyta żądanie z parametru In i ustawi odpowiedź w parametrze Out. W następnym kroku w trasie wyjście stanie się In.

Jeśli chcesz umieścić wiadomość gdzieś i nie martwić się o odpowiedź, możesz użyć ExchangePattern.InOnly.

Nawet jeśli jesteś w procesorze i chcesz przekształcić wiadomość, możesz operować na wiadomości In i zostanie ona skopiowana do Out.

ta jest także opisana w książce Camel w rozdziale Działanie 1.

Trasy są przekazując wiadomość wokół, a wymiana jest obiektem dostępu, który jest używany do przekazywania wiadomości i dostęp do nich globalne metadanych.