zeromq:发布到多个接收者,但其中一个除外

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

我有N个发布者订阅者。该消息是一个简单的布尔值。消息传递模式与常规PubSub略有不同:

  • [当一个订户收到true时,所有其他订户都应该收到false

因此,我希望将false发布给除一个订户以外的所有订户。该例外订户不是固定的,而是由用户选择的。

[我现在有一个主意是将所有人都发布给false,然后以PushPull / Pair模式将true发送给特殊订户。但这感觉就像是黑客。

是否会基于PubSub模式而不是通过1对1模式循环的简单解决方案?

zeromq messaging
1个回答
0
投票

Q“将基于PUB/SUB模式而不是通过1对1模式循环的简单解决方案吗?”

哦,肯定会。

使用XPUB/XSUB原型。每个XSUB都以发送“ subscription”消息,UUID#散列或类似内容开头。

[XPUB

,因为它是.recv() -sXSUB-s“ subscription”消息,所以注册了一个新的对等体,它是UUID#-哈希在某些情况下,如果确实要向此对等方发送消息,而现在不发送其他消息,则它只是.send() -s这样的消息,并已将UUID#哈希作为其二进制前缀放入(即,已添加如您从PUB/SUB所知,它位于实际消息的“左侧”,因为这是主题过滤的工作方式。

很容易。太酷了...

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