Hunter,

Thanks, the two examples are now added to the repository and should show up.

-Pieter

On Wed, Sep 8, 2010 at 9:53 PM, Hunter Ford <[email protected]> wrote:
> Python Code Example: Synchronized Pub Sub
>
> syncpub.py
>
> #
> #  Synchronized publisher
> #
> import zmq
>
> #  We wait for 10 subscribers
> SUBSCRIBERS_EXPECTED = 2
>
> def main():
>    context = zmq.Context()
>
>    # Socket to talk to clients
>    publisher = context.socket(zmq.PUB)
>    publisher.bind('tcp://*:5561')
>
>    # Socket to receive signals
>    syncservice = context.socket(zmq.REP)
>    syncservice.bind('tcp://*:5562')
>
>    # Get synchronization from subscribers
>    subscribers = 0
>    while subscribers < SUBSCRIBERS_EXPECTED:
>        # wait for synchronization request
>        msg = syncservice.recv()
>        # send synchronization reply
>        syncservice.send('')
>        subscribers += 1
>        print "+1 subscriber"
>
>    # Now broadcast exactly 1M updates followed by END
>    for i in range(1000000):
>       publisher.send('Rhubarb');
>
>    publisher.send('END')
>
> if __name__ == '__main__':
>    main()
>
> syncsub.py
>
> #
> #  Synchronized subscriber
> #
> import zmq
>
> def main():
>    context = zmq.Context()
>
>    # First, connect our subscriber socket
>    subscriber = context.socket(zmq.SUB)
>    subscriber.connect('tcp://localhost:5561')
>    subscriber.setsockopt(zmq.SUBSCRIBE, "")
>
>    # Second, synchronize with publisher
>    syncclient = context.socket(zmq.REQ)
>    syncclient.connect('tcp://localhost:5562')
>
>    # send a synchronization request
>    syncclient.send('')
>
>    # wait for synchronization reply
>    syncclient.recv()
>
>    # Third, get our updates and report how many we got
>    nbr = 0
>    while True:
>        msg = subscriber.recv()
>        if msg == 'END':
>            break
>        nbr += 1
>
>    print 'Received %d updates' % nbr
>
> if __name__ == '__main__':
>    main()
>
>
>
> _______________________________________________
> zeromq-dev mailing list
> [email protected]
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
>



-- 
-
Pieter Hintjens
iMatix - www.imatix.com
_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to