Apache Camel - kolejki wiadomości
Większość projektów integracyjnych korzysta z przesyłania wiadomości, ponieważ pomaga to w tworzeniu luźno powiązanej architektury aplikacji. Przesyłanie wiadomości może być synchroniczne lub asynchroniczne. JMS obsługuje obapoint-to-point i publish-subscribemodele. UżywaszQueue dla połączeń punkt-punkt i Topicdla modelu publikuj-subskrybuj. Na platformie Java JMS - Java Messaging Service zapewnia interfejs do serwera przesyłania wiadomości. Jednym z takich dostawców JMS typu open source jest Apache activeMQ. Camel nie jest dostarczany z dostawcą JMS; jednak można go skonfigurować do używania activeMQ. Aby użyć tego komponentu, musisz uwzględnić w swoim projekcie następujące słoiki - activemq, camel-spring i camel-jms.
Poniższy fragment kodu pokazuje, jak skonfigurować Camel dla activeMQ.
<bean id = "jms" class = "org.apache.camel.component.jms.JmsComponent">
<property name = "connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name = "orderQueue" value = "tcp://localhost:61000" />
</bean>
</property>
</bean>
Tutaj aplikacja Camel zacznie nasłuchiwać kolejki o nazwie orderQueue. Sama kolejka jest skonfigurowana na serwerze przesyłania wiadomości activeMQ działającym na lokalnym hoście i umieszczonym na porcie 61000. Po wykonaniu tej czynności aplikacja może wysyłać lub odbierać wiadomości do tej kolejki z dowolnego punktu końcowego zdefiniowanego w aplikacji.
Wreszcie nadszedł czas, aby zebrać wszystko razem w projekcie, aby uzyskać głębsze zrozumienie sposobu tworzenia aplikacji Camel.