Implantação do Apache Camel
-
21-09-2019 - |
Pergunta
O que é uma maneira típica/preferível de criar sistema com cames Apache e ActiveMQ? Como a alta disponibilidade pode ser alcançada? Em qual contêiner o camelo deve correr?
Solução
Qualquer aplicativo Java pode usar o camel diretamente. O único requisito é que os frascos de camelo estejam presentes no ClassPath. Portanto, qualquer contêiner deve estar bem. O componente que recebe a mensagem da fila pode empurrar diretamente a mensagem para o contexto de camelo que, por sua vez, pode fazer o processamento. Para alta disponibilidade, o cluster de ActiveMQ pode ser usado.
Outras dicas
Podemos usar o Apache Karaf como contêiner, que fornece abordagem modular OSGI e JBoss Fuse como ESB. O Maven-Bundle-Plugin pode ser usado para implantação em vez de JAR, pois o pacote contém metadados extras para pacotes de importação e exportação
Abaixo está a resposta de acordo com minha experiência:
Q: O que é uma maneira típica/preferível de criar sistema com o Apache-Camel e o ActiveMQ:
ANS: Depende da pilha de tecnologia que você está usando.
O Apache Camel é um ESB e usado principalmente para integração do sistema usando o WebService/JMS (modelo de assinatura pública).
Q: Como a alta disponibilidade pode ser alcançada? Em qual contêiner o camelo deve correr?
ANS: Camel suporta threads múltiplos, estrutura de serviço executor e conceitos simultâneos de consumidores (também conhecidos como simultaneidade) para que você possa configurá -lo e obter uma alta disponibilidade.
Se você estiver usando o aplicativo independente (não a Web), pode ser executado na JVM e, para o desenvolvimento da web, ele pode executar a maior parte do contêiner de desenvolvimento da web como Tomcat, Jboss etc.
Eu sugiro que você experimente o Apache Karaf para aplicações de camelo.
- Definir pom.xml e recurso.xml.
- Instale -o e execute em Karaf.
Você também pode verificar o Hawtio que ele fornece monitoramento, logs e uma apresentação visual de rotas.
Se você precisar de alta disponibilidade, verifique Karaf Celar. Há documentação sobre https://karaf.apache.org/documentation.html