如何在子服务器套接字关闭时使ZMQ pub客户机套接字缓冲消息

问题描述 投票:0回答:1

给出2个应用,其中应用程序A使用发布者客户端有争议地将数据流传输到应用程序B,该应用程序B具有一个子服务器套接字来接受该数据,我们如何在应用程序A中配置发布客户端套接字,以便在B不可用时(例如重新部署,重新启动) A缓冲所有待处理的消息,当B变为可用时,缓冲的消息进入低谷,套接字追上实时流?

简而言之,当SUB SERVER不可用时,我们如何使PUB CLIENT套接字缓冲区消息具有一定的限制?

PUB客户端的默认行为是进入静音状态,但是如果我们可以将其更改为限制大小的缓冲区,那将是非常好的,zmq是否可以?还是我需要在应用程序级别上做...

我已经尝试在我的套接字中设置HWM和LINGER,但是如果我没记错的话,它们仅负责慢速消费情况,即我的发布者连接到订阅者,但是订阅者是如此之慢,以至于发布者开始缓冲消息( hwm将限制这些消息的数量)...

由于我的目标是jvm平台,所以我使用jeromq。>>

给出应用程序A使用发布者客户端的两个应用程序,它们争用地将数据流传输到具有子服务器套接字以接受该数据的应用程序B,我们如何配置发布者客户端...

java sockets kotlin zeromq jeromq
1个回答
0
投票

正如我们在评论中讨论的,publisher无法缓冲消息,而没有任何连接,它只会丢弃任何新消息:

来自文档:

© www.soinside.com 2019 - 2024. All rights reserved.