Apache Camel - Arquitetura
A arquitetura Camel consiste em três componentes - mecanismo de integração e roteador, processadores e componentes. Isso é ilustrado na figura a seguir -
O próprio núcleo do Camel é muito pequeno e contém 13 componentes essenciais. Os mais de 80 componentes restantes estão fora do núcleo. Isso ajuda a manter uma baixa dependência de onde ele é implantado e promove extensões no futuro. oComponents módulo fornece um Endpointinterface com o mundo externo. Os pontos de extremidade são especificados por URIs, comofile:/order e jms:orderQueue que você viu no último capítulo.
o Processorsmódulo é usado para manipular e mediar mensagens entre Endpoints. Os EIPs que mencionei anteriormente são implementados neste módulo. Atualmente, ele suporta mais de 40 padrões conforme documentado no livro EIP e outras unidades de processamento úteis.
o Processors e Endpoints estão ligados em Integration Engine and Routermódulo usando DSLs. Ao fazer a fiação, você pode usar filtros para filtrar mensagens com base em critérios definidos pelo usuário. Conforme mencionado anteriormente, você tem várias opções para escrever essas regras. Você pode usar Java, Scala, Groovy ou mesmo XML para isso.
Agora, chegamos ao componente mais importante do Camel, que pode ser considerado o núcleo - o CamelContext.