[zeromq-dev] v3.1 publisher filtering
Joshua Foster
jhawk28 at gmail.com
Wed Mar 14 02:31:21 CET 2012
PUB functions the same in 3.1 as 2.1, but XPUB actually does publisher
side filtering. (if I read the code correctly)
Joshua
On 3/13/2012 1:39 PM, Calvin de Vries wrote:
> I'm not sure this is correct, Joshua. PUB filters the messages in 3.1,
> while you can use XPUB in order to do more advanced subscription
> management, it is not a requirement to have publisher side filtering.
>
> In Steve's example, Subscriber A would not receive every message, only
> messages matching its filter.
>
>
> On Mon, Mar 12, 2012 at 7:43 PM, Joshua Foster <jhawk28 at gmail.com
> <mailto:jhawk28 at gmail.com>> wrote:
>
> 3.1 works the same way as 2.1 in your example. The changes in 3.1
> is that the subscription is forwarded to the PUB socket. This
> allows you to create a publisher device. It would sit between the
> parent publisher and the subscriber. The XPUB keeps track of the
> subscriptions and allows them to apply to the XSUB socket. This
> effectively filters out any messages that do not match a
> subscription. In your example, you are matching against "a" and ""
> so all messages would be passed through.
>
> You can of course use a ROUTER socket and manage the subscriptions
> yourself in the application (with DEALER). The main downside is
> that you won't be able to detect client disconnections. You may
> also want to consider creating an alternative PUB socket
> implementation in ZeroMQ.
>
> Joshua
>
>
> On 3/12/2012 6:48 PM, Steve wrote:
>> I have a high level question about how a v3.1 publisher handles
>> sending updates to subscribers. I understand that v3.1 can push
>> the subscription filtering further towards the publisher but to
>> what degree I'm unclear on.
>>
>> Here is a very simple usage example:
>>
>> 1) Publisher has a list of topics that are randomly updated 10
>> times a second. There are a total of 26 topics and each is a
>> single lowercase alpha character representing the English
>> alphabet (a - z).
>> 2) Subscriber 'A' subscribes to just a topic matching "a".
>> 3) Subscriber 'B' subscribes to all topics ("").
>>
>> In version 2.1, I believe Subscriber 'A' would receive all the
>> messages and that the zeromq client library would filter them so
>> the client would only see updates on 'a'. In version 3.1, is it
>> possible to filter the messages at the publisher so that
>> Subscriber 'A' only receives updates on topic 'a' (no filtering
>> done on the client) and that Subscriber 'B' receives all updates
>> on all topics (a-z)?
>>
>> Thanks,
>>
>> Steve
>>
>>
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org <mailto:zeromq-dev at lists.zeromq.org>
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
>
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org <mailto:zeromq-dev at lists.zeromq.org>
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
>
>
>
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20120313/7996cab0/attachment.htm>
More information about the zeromq-dev
mailing list