我想从客户端向服务器发送数据。只有最后一条消息对服务器是重要的。如果服务器在故障后启动,我只希望服务器从客户端获得最后一条消息。
当服务器关闭时,我希望客户端继续处理和发送消息,或者至少将它们放入一个队列中(长度为一条消息)。
为此,我尝试使用NetMQ/ZeroMQ。怎么做呢?
谢谢!
发布于 2015-05-22 21:44:51
ZeroMQ还有一个叫做Conflate的特性(NetMQ还没有,你可能想移植它),看看下面的问题:
ZeroMQ: I want Publish–Subscribe to drop older messages in favor of newer ones
另请参阅从ZeroMQ文档合并的说明:
ZMQ_CONFLATE:仅保留最后一条消息如果设置此选项,套接字将在其入站/出站队列中仅保留一条消息,此消息是接收到的最后一条消息/要发送的最后一条消息。忽略'ZMQ_RCVHWM‘和'ZMQ_SNDHWM’选项。不支持多部分消息,尤其是只有一部分消息保留在套接字内部队列中。
https://stackoverflow.com/questions/30392834
复制相似问题