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.