ZeroMQ设计决策

时间:2010-09-28 19:35:48

标签: sockets system distributed zeromq

在REQ / REP套接字中,如果套接字向死(断开连接)节点发送请求,则消息不会被传递并停留在占用内存的消息队列中。如何清理这些未传递的消息(比方说,队列中的消息超过1分钟)?

谢谢!

1 个答案:

答案 0 :(得分:3)

您可能需要设置可选参数ZMQ_LINGER

  

ZMQ_LINGER选项应设置   指定的逗留期限   插座。徘徊期决定了   有多长的待处理消息   尚未发送给同伴的人会流连忘返   在套接字关闭后在内存中   用zmq_close(3),进一步影响   套接字的终止   上下文与zmq_term(3)。

...正值将设置消息在队列中被阻止的最大时间。

请参阅 http://api.zeromq.org/2-1-1:zmq-setsockopt