gpt4 book ai didi

sockets - ZMQ用户过滤

转载 作者:行者123 更新时间:2023-12-03 11:54:02 24 4
gpt4 key购买 nike

根据下面的讨论

Can ZMQ publish message to specific client by pub-sub socket?

当订户不提供过滤器时,似乎不可能阻止订户接收所有消息。

是否可能,不提供过滤器的订户将不会收到任何消息?即,如果订阅者知道确切的过滤器(没有通配符等),则仅接收消息。

最佳答案

在主题上似乎有些困惑。让我们揭开 PUB-SUB 的神秘面纱

情况1)“不提供过滤器”的SUB

实例化后,这是默认的初始状态

aSub_signallingChannelEND = aCentralCONTEXT.socket( zmq.SUB )

在这种初始状态下,自然没有有效的预订(预设)集,因为 Context()是一个理性过程(不是Norn),因此它不能先验地假定任何此类通用有效的预订 key (并且它将如果可以的话,还是很漂亮的Orwellish,不是吗?),以便灌输一个 SUB -instance,使其自诞生之日起就“呼吸”。

在原始 ZeroMQ v2.x 中(请注意,该文档对于ZeroMQ库的最新版本无效),但是此状态并不意味着 SUB 端实际上不会收到任何消息。 v2.x订阅过滤是在 SUB -端执行的(无论是由于性能决定而定),因此仍然可以通过电线级 检测“未经授权”的消息

情况2)“提供了所有过滤器的超集”的SUB

简化版:
原则上, PUB -side本质上没有控件来区分关于订阅内容和取消订阅内容的 SUB -side决定。

如何使其以给定的方式工作?

以此方式定义了 PUB-SUB 消息传递模式后,您必须帮助自己完成 PUB-SUB模式之外的身份验证需求的智能层设置,或者可以使用其他方式来添加基于身份验证的保护(例如,为基于身份验证的代码/解码内容的选择性能力确定了正确的权利/关键,以突出显示一些可能的方法)。

关于sockets - ZMQ用户过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31624189/

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