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 <[email protected]> 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 
> [email protected]http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
>
>
> _______________________________________________
> zeromq-dev mailing list
> [email protected]
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
>
_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to