gpt4 book ai didi

sockets - ZMQ Socket解决方案用于一对一双向通信并重新建立连接?

转载 作者:行者123 更新时间:2023-12-02 18:07:35 25 4
gpt4 key购买 nike

我正在寻找一种支持 ZMQ 的解决方案,用于连接到 0 或 1 个对等点的绑定(bind)端点之间的通信,仅此而已。通信是双向的,连接可以随时结束或切断;并且可以与新的对等点或同一对等点重新建立连接。如果绑定(bind)端点在另一端没有对等点,则它是否阻塞或不阻塞都没有关系。

哪对 ZMQ 套接字最适合此用例?我最初想到的是 REP/REQ,但是套接字对允许多个 REQ 连接到一个 REP,这是我不想要的;当有人断开连接时,它还需要处理“我正在等待接收/我要发送一些东西”的锁步范例。 PAIR 似乎也很糟糕,因为它不能自然地处理重新连接,但它具有我想要的“0 或 1 个对等点”限制。

有什么建议吗?

最佳答案

简短的回答:不幸的是,没有一种模式可以完全满足您开箱即用的需求。

最接近的模式是 ZMQ PAIR to PAIR pattern 。但它在以下方面存在一些局限性:

ZMQ_PAIR sockets are designed for inter-thread communication across the zmq_inproc(7) transport and do not implement functionality such as auto-reconnection. ZMQ_PAIR sockets are considered experimental and may have other missing or broken aspects.

ROUTER和DEALER是最灵活的模式。您可以控制它来设置您需要的限制。

关于sockets - ZMQ Socket解决方案用于一对一双向通信并重新建立连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20099337/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com