我尝试使用jeromq(0.3.2)的推/拉模式。在开始时,它运作良好。但过了一段时间。推送方不发送消息并在那里阻止。我不知道为什么。我设置了sendTimeout参数,并打印zmq套接字错误号。它是35.有什么我没注意到的吗?或其他暗示?
谢谢!
推送端代码:
ZMQ.Context context = ZMQ.context(1);
ZMQ.Socket push4Topic = context.socket(ZMQ.PUSH);
private void init() {
push4Topic.setTCPKeepAlive(1);
push4Topic.setSendTimeOut(30000);
push4Topic.bind(bindUrl);
}
public boolean send(String msg) {
return push4Topic.send(msg);
}
private void destroy() {
if (push4Topic != null) {
push4Topic.close();
}
if (context != null) {
context.term();
}
logger.info("destroy() socket destroied");
}
====
我添加了一个监控推送端的监控线程。然后,我发现了ZMQ_EVENT_DISCONNECTED事件。那什么意识?我的拉码有问题吗?