В ESB, таком как Apache Camel, какой механизм на самом деле «марширует» (вытягивает/проталкивает) сообщения по маршрутам от конечной точки к конечной точке?
Верблюд RouteBuilder
просто составляет граф конечных точек
и маршрутов
и знает, какой пункт назначения/следующий конечная точка
для передачи сообщения после того, как он посетит определенную конечную точку
или сами конечные точки
узнают, какой следующий пункт назначения для обработанного сообщения.
В любом случае, я запутался:
RouteBuilder
знает «поток» сообщений через систему, то этот RouteBuilder
должен знать бизнес-логика того, когда Endpoint A
должна передавать сообщение рядом с Endpoint B
vs Endpoint C
, но во всех примерах Camel я вижу, что эта бизнес-логика не не существует; иконечных точках
связывает их вместе и нарушает некоторые основные принципы SOA/ESB/EIP и т. д.