Maybe a simple publisher on two channels is enough? i.e. in pyzmq the
following you did not provide much information
# simple publisher
import zmq
from random import randrange
import random
import time
import json
context = zmq.Context()
socket = context.socket(zmq.PUB)
socket.bind("tcp://*:5555")
while True:
pubmsg = random.randrange(1,100)
print 'generated data ',pubmsg
j = json.dumps(pubmsg)
socket.send_multipart([b"high", j])
time.sleep(1) #pretend work
socket.send_multipart([b"low", j])
#---------------------------------------------
#simple subscriber
import sys
import zmq
import random
context = zmq.Context()
socket = context.socket(zmq.SUB)
def sub(port):
socket.connect("tcp://localhost:" + port)
ffilter = random.choice(["high","low"])
ffilter = ffilter.decode('ascii')
socket.setsockopt_string(zmq.SUBSCRIBE, ffilter)
c = 0
maxc = 100
while c < maxc:
string = socket.recv_string()
print string
c+=1
port = "5555"
sub(port)
On Fri, Feb 7, 2014 at 5:28 PM, Lindley French <[email protected]> wrote:
> Can you clarify the need for this priority a bit? My first thought is to
> create a hierarchy, so that the "top-tier" subscribers re-publish to those
> who come after them. That isn't quite right though if your condition is
> that *any* of the top-tier subscribers must receive the event before a
> given node does, though, only if it's that a *specific* one does.
>
> Also be aware pub/sub doesn't mind dropping messages, so be careful using
> in conjunction with the phrase "have to".
>
>
> On Thu, Feb 6, 2014 at 9:33 AM, Lukas Zaoralek
> <[email protected]>wrote:
>
>> Hi Devs,
>>
>> I would like to publish hundreds even thousands events to subscribers as
>> quick as possible, but there is a condition several subscribers have to
>> fetch events firstly than others. In other words there exists priority
>> which set of subscribers will get events first than others set of
>> subscribers. Can I use only pub-sub pattern? Or do I have to combine
>> sub-pub and req-rep patterns together in some advanced way? Thank you for
>> your advice.
>>
>> Lukas
>>
>> _______________________________________________
>> 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
>
>
_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev