Check out the documentation on devices and pyzmq as well as the zguide > ... whenever i start a zmq.device(zmq.Forwarder), this blocks my interpreter, > so is there any way of starting a forwarder always as a different process or > any ways of making it non-blocking.
http://zeromq.github.com/pyzmq/devices.html http://zguide.zeromq.org/page:all#Intermediates-and-Devices -- Cornelius Toole Sent with Sparrow (http://www.sparrowmailapp.com) On Friday, March 23, 2012 at 12:19 AM, Ronald Swain wrote: > Hello All, > > I had one more small question, whenever i start a zmq.device(zmq.Forwarder), > this blocks my interpreter, so is there any way of starting a forwarder > always as a different process or any ways of making it non-blocking. > > Hope my question is clear. > > Thanks & Regards, > Ronald > > From: proj_symb...@live.com (mailto:proj_symb...@live.com) > To: zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > Date: Tue, 20 Mar 2012 12:27:24 +0530 > Subject: Re: [zeromq-dev] FW: Help With Regard To the ZMQ Forwarder > > Ok the first question is i am back to zero, so now when my scripts are > working i am able to send messages, the question of cleaning comes. > > i am using the following code for the forwarder and i think thats correct, > but when i kill the process which is running the forwarder the SIGTERM signal > is not fired i guess and incoming, outgoing and zmq context is not cleaned > properly. > > code: > > import zmq > import signal > > > # this method handles the termination of the app > # this handler is responsible for properly cleaning of the ports > def termSignalHandler(signum,frame): > incoming.close() > outgoing.close() > context.term() > print("termSignal Handler Called") > > def startForwarder(): > context = zmq.Context(1) > incoming = context.socket(zmq.SUB) > outgoing = context.socket(zmq.PUB) > > try: > incoming.connect("tcp://127.0.0.1:5559"); > incoming.setsockopt(zmq.SUBSCRIBE, "") > except: > print("incoming socket is already open") > > try: > outgoing.bind('tcp://127.0.0.1:4449') > except: > print("outgoing socket is open") > > zmq.device(zmq.FORWARDER, incoming, outgoing) > > signal.signal(signal.SIGTERM,termSignalHandler) > startForwarder() > > a proper copy can be found at https://gist.github.com/2132163, can you guys > tell me what wrong i am doing here. > > > > > > From: proj_symb...@live.com (mailto:proj_symb...@live.com) > To: zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > Date: Tue, 20 Mar 2012 11:23:44 +0530 > Subject: Re: [zeromq-dev] FW: Help With Regard To the ZMQ Forwarder > > Hello Cornelius and Justin, > > I was at last able to get my forwarder to work and it was my mistake. > > My sender code which was like: > > def sendMessage(): context = zmq.Context() sender = context.socket(zmq.PUB) > sender.bind('tcp://127.0.0.1:5558') sender.send("This is the sender") > > was the actual problem, i got to know from my reading that call to > socket.bind should happen only once, so i changed my sender code to > something like: > > socket = context.socket(zmq.PUB) > socket.bind('tcp://127.0.0.1:4443') > > def sendMessage(socket,message): > try: > socket.send(message) > except: > print "Unable To Send Message" > > and than i was able to send messages but this gets me into two three more > problems, i hope you guys will help me out is giving me some > ideas about this. > > > > > > Date: Mon, 19 Mar 2012 13:18:59 -0500 > From: cornto...@cct.lsu.edu (mailto:cornto...@cct.lsu.edu) > To: zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > Subject: Re: [zeromq-dev] FW: Help With Regard To the ZMQ Forwarder > > From the looks of your code https://gist.github.com/2119078, you define > functions for sending and receiving messages, but you do not call them, like > you do with Forwarder.py. > > Also for the sake of easier testing, you may want to have your sender script > to send multiple messages to allow you to see what's going on.-- > Cornelius Toole > Sent with Sparrow (http://www.sparrowmailapp.com) > > > On Monday, March 19, 2012 at 11:59 AM, Symbian Projects wrote: > > > Thanks for your reply cornelius. > > > > I am now using netstat for checking the blocked ports. > > > > Meanwhile i have uploaded the code here https://gist.github.com/2119078 > > > > and there is no proprietary code at the moment its the basic code where i > > am trying to get the forwarder working. > > > > and your last point is very valid, i start first the forwarder, than i > > start the receiver and than the sender to send messages. From this the > > point you have mentioned can be a problem. > > > > I will be grateful if you can just have a look at the code its very small > > and let me know if i am doing some wrong. > > > > Regards, > > Ronald > > > > Date: Mon, 19 Mar 2012 11:24:40 -0500 > > From: cornelius.to...@gmail.com (mailto:cornelius.to...@gmail.com) > > To: zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > > Subject: Re: [zeromq-dev] FW: Help With Regard To the ZMQ Forwarder > > > > Ronald, > > > > You can use netstat. You're using windows, right? > > http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/netstat.mspx?mfr=true > > > > As for debugging your code, can you paste the code into a paste bin or > > gist.github? > > Try this for instance: https://gist.github.com/ > > You omit out any code that is proprietary if this for work or research. > > > > After you check your ports, you should think about whether the order in > > which ports are being opened is an issue. For instance, your forwarder > > device binds the outgoing port, but what if the receiver thread starts > > before the device? > > > > > > -- > > Cornelius Toole > > Sent with Sparrow (http://www.sparrowmailapp.com) > > > > > > On Monday, March 19, 2012 at 11:11 AM, Symbian Projects wrote: > > > > > Hello Justin, > > > > > > Thanks again for reply. > > > > > > > > > I have tried restarting the platform, and i have also checked it in two > > > different machines, and in both machine it doesn't work. > > > > > > I am clue of ideas how to debug this problem as the no of line of code is > > > very small too. > > > > > > Is there any way i can diagnose that the port is closed or blocked > > > something like that. > > > > > > Thanks, > > > Ronald > > > > > > > From: jhc...@gmail.com (mailto:jhc...@gmail.com) > > > > Date: Mon, 19 Mar 2012 15:27:12 +0000 > > > > To: zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > > > > Subject: Re: [zeromq-dev] FW: Help With Regard To the ZMQ Forwarder > > > > > > > > If the same code with same libraries no longer works then clearly you > > > > have a runtime issue. Have you tried restarting the platforms? Maybe > > > > you should have a look at the order in which things are happening. Are > > > > you subscribing before the messages are sent? > > > > > > > > Perhaps its an IP filtering issue. Make sure the ports/proto are not > > > > blocked. > > > > > > > > On Mon, Mar 19, 2012 at 10:42 AM, Symbian Projects > > > > <proj_symb...@live.com (mailto:proj_symb...@live.com)> wrote: > > > > > Hello Justin, > > > > > > > > > > Thanks a lot for your reply. > > > > > > > > > > Yes i remember for what the thread was started, and that time my > > > > > forwarder > > > > > was running great without any problem. I was able to send and receive > > > > > messages between my publisher and subscribers. > > > > > > > > > > Than i added the signals to clean the sockets. > > > > > > > > > > After that nothing worked and now even the old code is not working, > > > > > which > > > > > was used to work earlier. > > > > > > > > > > I will be very grateful if you just have a look at the code i have > > > > > sent and > > > > > tell me is there something wrong in that. Please !! > > > > > > > > -- > > > > Justin Cook > > > > _______________________________________________ > > > > zeromq-dev mailing list > > > > zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > > > > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > > _______________________________________________ > > > zeromq-dev mailing list > > > zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > > > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > > > > > > > > > > > > > > > > _______________________________________________ zeromq-dev mailing list > > zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > _______________________________________________ > > zeromq-dev mailing list > > zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > > > > > > > > > _______________________________________________ zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > _______________________________________________ zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > _______________________________________________ zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org (mailto:zeromq-dev@lists.zeromq.org) > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > >
_______________________________________________ zeromq-dev mailing list zeromq-dev@lists.zeromq.org http://lists.zeromq.org/mailman/listinfo/zeromq-dev