Apache Camel - Hàng đợi Tin nhắn
Hầu hết các dự án tích hợp sử dụng tin nhắn vì nó giúp tạo ra kiến trúc ứng dụng được kết hợp lỏng lẻo. Nhắn tin có thể đồng bộ hoặc không đồng bộ. JMS hỗ trợ cả haipoint-to-point và publish-subscribecác mô hình. Bạn sử dụng mộtQueue cho điểm đến điểm và Topiccho mô hình đăng ký xuất bản. Trên nền tảng Java, JMS - Java Messaging Service cung cấp giao diện cho máy chủ nhắn tin. Apache activeMQ là một trong những nhà cung cấp JMS mã nguồn mở. Camel không giao hàng với nhà cung cấp JMS; tuy nhiên, nó có thể được cấu hình để sử dụng activeMQ. Để sử dụng thành phần này, bạn cần bao gồm các lọ sau trong dự án của mình - activemq, camel-spring và camel-jms.
Đoạn mã sau đây cho thấy cách định cấu hình Camel cho 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>
Tại đây, ứng dụng Camel sẽ bắt đầu lắng nghe một hàng đợi có tên orderQueue. Bản thân hàng đợi được thiết lập trong máy chủ nhắn tin activeMQ chạy trên máy chủ cục bộ và liệt kê tới cổng 61000. Sau khi hoàn tất, ứng dụng của bạn có thể gửi hoặc nhận tin nhắn đến hàng đợi này từ bất kỳ điểm cuối nào được xác định trong ứng dụng của bạn.
Cuối cùng, đã đến lúc đặt mọi thứ lại với nhau trong một dự án để hiểu sâu hơn về cách các ứng dụng Camel được tạo ra.