Tôi đang làm việc trên một dự án có liên quan đến một số chương trình C++ mà mỗi chương trình lấy đầu vào và tạo đầu ra. Dữ liệu (hàng chục đến hàng trăm byte, có thể là JSON) về cơ bản chảy (không đồng bộ) theo một hướng, và các chương trình sẽ cần phải được đặt trên các máy tính Linux khác nhau xung quanh mạng LAN.Đề xuất cho hàng đợi tin nhắn từ xa C/C++
Vì dữ liệu chỉ truyền theo một hướng, tôi không tin rằng tôi cần một mô hình giao dịch như HTTP. Tôi nghĩ rằng một mô hình hàng đợi tin nhắn (lửa và quên) làm cho ý nghĩa nhất và nên đơn giản hóa logic của mỗi chương trình. Nó có lẽ là đủ để chỉ lưu ý rằng thông báo đã được thêm vào hàng đợi từ xa thành công.
Điều tôi đang tìm kiếm là các đề xuất về cách triển khai hàng đợi thư này trong C hoặc C++. Có vẻ như POSIX và Boost hàng đợi thư bị giới hạn ở một máy chủ duy nhất và RabbitMQ dường như có hỗ trợ C/C++ yếu và MQ4CPP dường như không được hỗ trợ đầy đủ cho vai trò quan trọng trong kinh doanh. Tôi có sai về điều này không? Điều gì về Boost ASIO hoặc ACE hoặc tự viết mã ổ cắm? Tôi mong các đề xuất của bạn.
[ZeroMQ khá đẹp] (http://www.zeromq.org). – user7116
Câu trả lời hay, mọi người, nhưng tôi thực sự thích sự đơn giản của ZeroMQ. Nếu @sixlettervariables là để làm cho nó một câu trả lời, tôi sẽ chấp nhận nó. –