Chúng tôi sử dụng công cụ tập trung vào java sử dụng JMS cả trong nội bộ và để giao tiếp với phần mềm java bên ngoài. Bây giờ chúng ta phải thiết lập một giao diện mới cho một ứng dụng C#. Nhà cung cấp JMS của chúng tôi cung cấp triển khai C# hoạt động nhưng tôi không hoàn toàn chắc chắn rằng JMS là cách để thực hiện trong trường hợp này. Nó sẽ giới thiệu một phụ thuộc nhà cung cấp cụ thể mới trong một ứng dụng C# cho cả chi tiết về việc triển khai và sự hỗ trợ của khách hàng.Nhắn tin qua ngôn ngữ chéo
Một số googling đã dẫn tôi đến STOMP mà dường như là một giao thức cấp dây được hỗ trợ bởi nhiều nhà môi giới tin nhắn có khả năng JMS (hornetq, activemq, ...) nhưng dường như có sự thiếu khác biệt của các khách hàng thực tế trong C# (và java ở một mức độ nào đó). Mà không delving quá sâu tôi cũng không hoàn toàn chắc chắn, nơi nhấn mạnh vào "văn bản" đi vào chơi? Nó không hỗ trợ các đối tượng nhị phân?
Một giải pháp khác có thể là AMQP là một giao thức cấp dây khác nhưng thông số 1.0 chưa được phát hành và chúng tôi rất mệt mỏi khi triển khai thông số 0,9.1 4 năm vì có vẻ như đã thay đổi rất nhiều trong 1,0.
Giải pháp nào là tốt nhất cho nhắn tin không đồng bộ giữa các ngôn ngữ xem xét bảo mật, hỗ trợ, giao dịch, tuân thủ tiêu chuẩn, tính di động, ... Lưu ý rằng xà phòng với WS- * thích hợp không phải là tùy chọn cho giao diện cụ thể này.
EDIT1: Tôi đã xem các câu hỏi như Cross-platform, cross-language messaging system? nhưng dường như chúng tập trung vào một công cụ cụ thể hoạt động ở nhiều ngôn ngữ. Tôi thực sự đang tìm kiếm một giao thức tuân thủ các tiêu chuẩn có thể được thực hiện bởi nhiều nhà cung cấp.
Không có vấn đề gì bạn làm bạn sẽ giới thiệu một số chức năng cụ thể nền tảng nhà cung cấp hoặc nhắn tin. Bạn có thể sử dụng email thay vì đó là nền tảng chéo nhưng nó là SMTP cụ thể. –
Giao thức cụ thể không phải là một vấn đề miễn là giao thức là một tiêu chuẩn được thiết lập tốt. Nếu SMTP chỉ có sẵn từ một nhà cung cấp cụ thể hoặc khác với nhà cung cấp cho nhà cung cấp, đó sẽ là vấn đề – nablex
JMS là giao diện thiết lập yêu cầu bạn tải trình điều khiển thích hợp cho máy chủ bạn đang sử dụng. Bạn sẽ có thể viết mã lõi của bạn để lựa chọn máy chủ được sử dụng có thể được cấu hình mà không cần thay đổi mã của bạn. –