Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets ZMQ用户过滤_Sockets_Zeromq - Fatal编程技术网

Sockets ZMQ用户过滤

Sockets ZMQ用户过滤,sockets,zeromq,Sockets,Zeromq,根据下面的讨论 当订户不提供筛选器时,似乎不可能阻止他接收所有消息 是否可能不提供筛选器的订户不会收到任何消息?也就是说,订阅者只接收消息,如果他知道一个确切的过滤器(没有通配符等)。在主题上似乎有点混淆。让我们来揭开这家酒吧的神秘面纱 案例1)“未提供过滤器”的分包商 顺便说一句,这是实例化之后的默认初始状态 aSub_signallingChannelEND = aCentralCONTEXT.socket( zmq.SUB ) 在这种初始状态下,自然没有有效的订阅(预)集,因为Con

根据下面的讨论

当订户不提供筛选器时,似乎不可能阻止他接收所有消息


是否可能不提供筛选器的订户不会收到任何消息?也就是说,订阅者只接收消息,如果他知道一个确切的过滤器(没有通配符等)。

在主题上似乎有点混淆。让我们来揭开这家酒吧的神秘面纱


案例1)“未提供过滤器”的分包商 顺便说一句,这是实例化之后的默认初始状态

aSub_signallingChannelEND = aCentralCONTEXT.socket( zmq.SUB )
在这种初始状态下,自然没有有效的订阅(预)集,因为
Context()
是一个理性的过程(而不是Norn),因此它不能先验地假设任何这样的普遍有效的订阅密钥(如果可以的话,这将是非常好的,不是吗?)这样就可以灌输一个
-实例,让它从诞生之日起就“呼吸”

在原始的ZeroMQ v2.x(请注意,这对于ZeroMQ库的最新版本是无效的)但是,这种状态并不意味着
子方不能实际接收任何消息。v2.x订阅筛选是在
端执行的(无论是出于性能动机还是非性能动机),因此仍然可以在线检测“未授权”消息


案例2)一名“确实提供了一套超级过滤器”的分包商 短版: 原则上,
PUB
-方本身没有控制权来区分订阅内容和取消订阅内容的任何
子方决定


如何让它以给定的方式工作?
由于
PUB-SUB
消息传递模式是这样定义的,因此您必须帮助自己进行智能分层设置,以满足您在
PUB-SUB
模式之外的身份验证需求,或者可以使用其他方法来增加基于身份验证的保护(例如,基于身份验证的定制权限/密钥,用于编码/解码内容的选择性能力,以突出一些可能的方法).

不可能……难道你没有神秘字节,例如0x02或类似的吗?神秘字节在这里会有什么帮助?你只需要一个订阅者就可以订阅神秘字节……或者你设计代码来推/拉