The second bind in the original example (rc = zmq_bind (publisher, "ipc://weather.ipc");) is completely unnecessary because the client never connects to an ipc endpoint.
Delete that line of code and try the example again. cr On Jun 17, 2013, at 10:41 AM, Shaukat Mahmood Ahmad <[email protected]> wrote: > Dear Pieter, > > Regarding your suggestion I have a question regarding Weather Update > Server example > (https://github.com/imatix/zguide/blob/master/examples/C/wuserver.c), > said example uses dual binding tcp and ipc is it neceesary for PubSub > style communication to have two bindings? And as per your suggestion > will I have to replace the second binding with tcp binding as per > following code snippet. > > > --- Original Code Snippet from Example > > void *context = zmq_ctx_new (); > void *publisher = zmq_socket (context, ZMQ_PUB); > int rc = zmq_bind (publisher, "tcp://*:5556"); > assert (rc == 0); > rc = zmq_bind (publisher, "inproc://workers"); > assert (rc == 0); > > > --- Revised code as per your suggestion (if i got it right) > void *context = zmq_ctx_new (); > void *publisher = zmq_socket (context, ZMQ_PUB); > int rc = zmq_bind (publisher, "tcp://*:5556"); > assert (rc == 0); > rc = zmq_bind (publisher, "tcp://*.5557"); > assert (rc == 0); > > ---------------------------------------- > > I have tried this on my side Server and Client run successfully, > however no updates are collected by client, can you help me to resolve > this issue so that I can run PubDub example on my side. > > > On Mon, Jun 17, 2013 at 6:51 PM, Pieter Hintjens <[email protected]> wrote: >> Shaukat, >> >> Sorry about this. I'd recommend changing the ipc:// endpoint to a >> tcp:// one (with valid endpoints). It will work just the same. The >> later examples all do this. >> >> -Pieter >> >> On Mon, Jun 17, 2013 at 3:10 PM, shancat <[email protected]> wrote: >>> Not that I know of but I haven't gone that deep into zmq on Windows. You >>> might be sacrificing performance but I don't think there's up to date >>> performance information on Windows. Maybe you can do some benchmarks? If go >>> to http://api.zeromq.org/3-2:zmq-bind and go to the part about transports >>> you can go to each inbuilt transport doc page and read up. >>> >>> On Jun 17, 2013 10:44 PM, "Shaukat Mahmood Ahmad" <[email protected]> wrote: >>> >>> Thanks for being supportive, one last thing if I go with C/C++ on >>> Windows what else will I have to sacrifice (other than ipc://)? Can >>> you guide me to a reference / contents / list of zeroMQ protocols / >>> transports with supported platforms. >>> >>> Regards, >>> SMA >>> >>> On Mon, Jun 17, 2013 at 5:34 AM, shancat <[email protected]> wrote: >>>> It depends what you're trying to do with it but yes I would use it on >>>> Windows myself. You might want to look at the C# binding >>>> (https://github.com/zeromq/clrzmq) or the native C# port >>>> (https://github.com/zeromq/netmq). >>>> >>>> On Jun 17, 2013 4:37 AM, "Shaukat Mahmood Ahmad" <[email protected]> wrote: >>>>> >>>>> Thank shancat, yes finally I found it in API reference guide and in an >>>>> old thread (under zmq mailing list) where some one had requested and >>>>> tried to add ipc:// support for windows in 2011 but no success till >>>>> 2013. As a user can you recommend zMQ on windows as I was evaluating >>>>> it for a commercial software product currently running on Windows? >>>>> >>>>> >>>>> On Sun, Jun 16, 2013 at 8:22 PM, shancat <[email protected]> wrote: >>>>>> From the documentation: "The inter-process transport is currently only >>>>>> implemented on operating systems that provide UNIX domain sockets." So >>>>>> that's why bit doesn't work on Windows, failing with a helpful >>>>>> "Protocol >>>>>> not >>>>>> supported" message. >>>>>> >>>>>> On Jun 16, 2013 10:30 PM, "Shaukat Mahmood Ahmad" <[email protected]> wrote: >>>>>>> >>>>>>> I am new to zeroMQ so sorry for incomplete information in my last >>>>>>> message in this thread, after debugging I have found that following >>>>>>> code is failing on Windows platform with error # 135 and message >>>>>>> against this error is "Protocol not supported", there is some >>>>>>> advancement but I am still confused to get exact reason of failure >>>>>>> (as I am unable to locate some data in help / manual). >>>>>>> >>>>>>> Environment: >>>>>>> Windows 7 Professional 64bit >>>>>>> Visual Studio 2012 >>>>>>> zeroMQ version 3.2.3 >>>>>>> >>>>>>> code snippet: >>>>>>> >>>>>>> rc = zmq_bind (publisher, "ipc://weather.ipc"); // returns rc = -1 >>>>>>> err = zmq_errno(); // return err = 135 >>>>>>> errmsg = (char*) zmq_strerror(err); = returns error message string >>>>>>> as "Protocol not supported" >>>>>>> >>>>>>> Can anybody tell me about ipc protocol support on Windows platform. >>>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>>> End Note: >>>>>>> Now I am really confused about statements made about zeroMQ such as >>>>>>> it will provide ease will reduce time to solve bigger problems, but >>>>>>> the way it is presented and documented is really useless, to use this >>>>>>> library either you have extra time to debug the available source and >>>>>>> re-write to fit your need or simply find some other suitable library. >>>>>>> >>>>>>> 0/100 for zeroMQ because I have wasted my whole weekend on trying to >>>>>>> understand this useless library. >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Sun, Jun 16, 2013 at 2:12 PM, Shaukat Mahmood Ahmad <[email protected]> >>>>>>> wrote: >>>>>>>> Hi, >>>>>>>> I am unable to run Weather update server (wuserver.c) example due to >>>>>>>> failed assertion at second bind request as following. >>>>>>>> >>>>>>>> rc = zmq_bind (publisher, "ipc://weather.ipc"); >>>>>>>> assert (rc == 0); >>>>>>>> >>>>>>>> The above assert fails as zmq_bind() returns -1. >>>>>>>> >>>>>>>> Can anybody help me to resolve this error. >>>>>>>> >>>>>>>> >>>>>>>> : Complete Code >>>>>>>> >>>>>>>> >>>>>>>> #include "zhelpers.h" >>>>>>>> >>>>>>>> int main () >>>>>>>> { >>>>>>>> void *context = zmq_ctx_new(); >>>>>>>> void *publisher = zmq_socket(context, ZMQ_PUB); >>>>>>>> int rc = zmq_bind(publisher, "tcp://*:5556"); >>>>>>>> assert (rc == 0); >>>>>>>> rc = zmq_bind(publisher, "ipc://weather.ipc"); >>>>>>>> rc = zmq_bind (publisher, "ipc://weather.ipc"); >>>>>>>> assert (rc == 0); >>>>>>>> >>>>>>>> srand ((unsigned) time(NULL)); >>>>>>>> >>>>>>>> while (1) >>>>>>>> { >>>>>>>> int zipcode, temperature, relhumidity; >>>>>>>> char update[20]; >>>>>>>> zipcode = randof (100000); >>>>>>>> temperature = randof (215) - 80; >>>>>>>> relhumidity = randof (50) + 10; >>>>>>>> sprintf (update, "%05d %d %d", zipcode, temperature, >>>>>>>> relhumidity); >>>>>>>> s_send( publisher, update); >>>>>>>> } >>>>>>>> zmq_close (publisher); >>>>>>>> zmq_ctx_destroy (context); >>>>>>>> return 0; >>>>>>>> } >>>>>>> _______________________________________________ >>>>>>> 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 >>>> >>>> >>>> _______________________________________________ >>>> 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 >>> >> _______________________________________________ >> 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
