我正在从事一个项目,该项目涉及几个 C++ 程序,每个程序都接受输入并生成输出。数据(几十到几百字节,可能是 JSON)本质上是(异步地)向一个方向流动,并且程序需要位于 LAN 周围的不同 Linux 计算机上。
由于数据只向一个方向流动,我认为我不需要像 HTTP 这样的事务模型。我认为消息队列模型(即发即弃)最有意义,并且应该简化每个程序的逻辑。仅注意消息已成功添加到远程队列可能就足够了。
我正在寻找的是有关如何在 C 或 C++ 中实现此消息队列的建议。POSIX和Boost消息队列似乎仅限于单个主机,RabbitMQ似乎对 C/C++ 的支持较弱,而MQ4CPP似乎不足以支持关键业务角色。我错了吗?Boost ASIO或ACE或自己编写套接字代码呢?我期待您的建议。