Hãy xem xét kịch bản như trong hình ảnh đính kèm:Chế biến một thông điệp đúng một lần
- Cổng thông tin (sản xuất) sẽ gửi một số thông điệp tới xe buýt mà phải được xử lý bởi nhiều ứng dụng (tiêu dùng) - PAYROLLAPP, Helpdesk, vv
- Nhiều trường hợp các ứng dụng của người tiêu dùng có thể chạy, cũng những trường hợp có thể được thêm/loại bỏ động
- Bây giờ, điều quan trọng là đảm bảo rằng thông báo chỉ được xử lý một lần, cho mỗi ứng dụng tức là nếu PAYROLLAPP -1 xử lý thông báo, PAYROLLAPP -2 KHÔNG nên xử lý thông báo; tất nhiên, trong sơ đồ trên , HELPDESK - 1 phải xử lý nó. Tóm lại, trong trường hợp có nhiều trường hợp, chính xác một số phải xử lý thư, sau khi
- Khi tôi tìm kiếm câu trả lời, hầu hết nội dung là về việc tạo 'người tiêu dùng chọn lọc' - người tiêu dùng chấp nhận/từ chối thư một số logic - xin lưu ý rằng không có thay đổi/bổ sung/gói có thể được thực hiện cho các ứng dụng được hiển thị trong sơ đồ; logic phải cư trú ở đâu đó trong nhà cung cấp quản lý xe buýt
Vui lòng hướng dẫn tương tự.
Thêm nhiều chi tiết sau khi Petter của câu trả lời:
- Các mục vào bên trái của dòng trái rải rác là 'phương pháp' - JMS Chăm sóc Tóc, ESB, EAI
- Các mục ở bên phải của đường chấm chấm phải là 'triển khai'
Bây giờ, phần lớn - QUERIES:
- Không phân biệt các giải pháp (JMS tinh khiết, ESB, EAI), không phần dưới đường chấm chấm (hàng đợi ứng dụng cụ thể) ngang cần được thực hiện?
- Cách sử dụng ESB (JBoss ESB, v.v.) thay vì ‘thuần túy’ JMS (Active MQ, v.v.), trợ giúp/ cản trở? ESB có cung cấp bất kỳ lợi thế nào so với JMS là 'chỉ java' (?) Hay không. Tôi địa ngục bối rối - ‘ESB hoặc JMS’, ngay cả sau khi giới thiệu các chủ đề như thế này: JMS and ESB - how they are related?. Có một câu trả lời cho biết “JMS không phù hợp với để tích hợp các dịch vụ REST, Hệ thống tệp, S/FTP, Email, Hessian, SOAP, v.v. được xử lý tốt hơn với ESB hỗ trợ các loại này một cách tự nhiên. Ví dụ: nếu bạn có một quy trình sẽ đổ một tệp CSV 500MB vào lúc nửa đêm và bạn muốn một hệ thống khác tải tệp, hãy phân tích cú pháp CSV và nhập vào cơ sở dữ liệu, ESB có thể dễ dàng thực hiện - trong khi giải pháp chỉ với JMS sẽ là xấu. Tương tự như vậy, tích hợp các dịch vụ REST, với cân bằng tải/ chuyển đổi dự phòng sang nhiều trường hợp phụ trợ có thể được thực hiện tốt hơn với ESB hỗ trợ HTTP/S nguyên bản. ”Nó chỉ thêm vào sự nhầm lẫn của tôi !!!
- Việc sử dụng khung công tác EAI (Apache Camel, v.v.) một cách tiếp cận hoàn toàn khác với cách tiếp cận thuần túy JMS hoặc ESB? Nếu có, làm thế nào và những ưu/nhược điểm là gì?
- Tôi được thông báo rằng chỉ riêng ESB sẽ không giúp được gì, BPM (hay cái gì khác?) Cần được sử dụng để xác định và lưu trữ logic 'định tuyến' - điều này có đúng không?
Dựa trên các đầu vào khác nhau được cung cấp, tôi đã quyết định tiếp tục với phương pháp 'Virtual Destinations' của Apache ActiveMQ. Tôi có một vài nghi ngờ về nó, nhưng những người sẽ được đăng trong một chủ đề riêng biệt. Cảm ơn mọi người vì đã giúp đỡ và hướng dẫn !!! –