Apache Camel - Kiến trúc
Kiến trúc Camel bao gồm ba thành phần - Công cụ tích hợp và Bộ định tuyến, Bộ xử lý và Thành phần. Điều này được minh họa trong hình sau:
Bản thân lõi Camel rất nhỏ và chứa 13 thành phần thiết yếu. Hơn 80 thành phần còn lại nằm ngoài lõi. Điều này giúp duy trì sự phụ thuộc thấp vào nơi nó được triển khai và thúc đẩy các tiện ích mở rộng trong tương lai. CácComponents mô-đun cung cấp một Endpointgiao diện với thế giới bên ngoài. Các điểm cuối được chỉ định bởi URI, chẳng hạn nhưfile:/order và jms:orderQueue mà bạn đã thấy trong chương trước.
Các Processorsmô-đun được sử dụng để thao tác và dàn xếp thông báo giữa các Điểm cuối. Các EIP mà tôi đã đề cập trước đó được thực hiện trong mô-đun này. Nó hiện hỗ trợ hơn 40 mẫu như được ghi trong sách EIP và các đơn vị xử lý hữu ích khác.
Các Processors và Endpoints được kết nối với nhau trong Integration Engine and Routermô-đun sử dụng DSL. Trong khi nối những thứ này, bạn có thể sử dụng bộ lọc để lọc thư dựa trên tiêu chí do người dùng xác định. Như đã đề cập trước đó, bạn có một số tùy chọn để viết các quy tắc này. Bạn có thể sử dụng Java, Scala, Groovy hoặc thậm chí cả XML cho việc này.
Bây giờ, chúng ta đến với thành phần quan trọng nhất của Camel, có thể được coi là cốt lõi - CamelContext.