问题描述
我正在尝试使用 ZeroMQ 在我的程序之间进行数据交换.我的系统由两部分组成:用 C# 编写并在 Windows 上运行的客户端(REQ)和用 C++ 编写并在 linux ubuntu 上运行的服务器(REP).
I'm trying to use ZeroMQ for data exchange between my programs. My system consists of two parts: client (REQ) written on C# and running on Windows and server (REP) written in C++ and running on linux ubuntu.
客户端发送请求,服务器捕获它,处理并发送回复.永远不会发送回复.
The client sends a request, server catches it, processes and sends a reply. The reply is never delivered.
在最小的测试用例中,客户端和服务器只是发送空消息,所以问题不在于消息构造或处理代码.
In the minimal test case client and server simply sends empty messages, so the problem isn't in the message construction or processing code.
如果我改变角色,在 Windows 上运行服务器,在 Linux 上运行客户端,一切正常.如果我在 Linux 上启动 PUB 服务器并在 Windows 上启动 SUB 客户端,则没有任何消息被传递.
If I change the roles, and run server on Windows and Client on Linux, everything works OK. If I start PUB server on Linux and the SUB client on Windows, none of the messages is delivered.
我在服务器端使用 Linux Ubuntu 12.04 LTS amd64、ZeroMQ 4.0.3 和 g++ 4.6.3,在客户端使用 Windows 8.1 x64、Visual Studio 2013 RC 和 clrzmq NuGet 包 2.2.5.
I use Linux Ubuntu 12.04 LTS amd64, ZeroMQ 4.0.3 and g++ 4.6.3 on server side and Windows 8.1 x64, Visual Studio 2013 RC and clrzmq NuGet package 2.2.5 on the client side.
有人有什么想法吗?
推荐答案
好的,我明白了.我不得不在服务器上使用旧版本的 ZMQ
OK, I get it. I had to use older version of ZMQ on the server
这篇关于ZeroMQ REQ-REP 不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!