Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does zeromq support IPC as a transport channel on windows?

I get the following error message, when I try the router example wiht python on Windows (Windows 8):

Traceback (most recent call last):
  File "router.py", line 43, in <module>
    client.bind("ipc://routing.ipc")
  File "socket.pyx", line 432, in zmq.core.socket.Socket.bind (zmq\core\socket.c:3870)
  File "checkrc.pxd", line 23, in zmq.core.checkrc._check_rc (zmq\core\socket.c:5712)
zmq.error.ZMQError: Protocol not supported

So I suppose that the IPC transport channel for zeromq is not suported on Windows (at least Windows 8). Is this true?

like image 489
Klaus Rohe Avatar asked Mar 13 '13 13:03

Klaus Rohe


People also ask

What transports are supported by ZeroMQ?

ZeroMQ supports common messaging patterns (pub/sub, request/reply, client/server and others) over a variety of transports (TCP, in-process, inter-process, multicast, WebSocket and more), making inter-process messaging as simple as inter-thread messaging.

Is ZeroMQ TCP or UDP?

ZeroMQ sockets carry messages, like UDP, rather than a stream of bytes as TCP does. A ZeroMQ message is length-specified binary data.

What is IPC ZeroMQ?

In general, IPC (inter process communication) can refer to a number of different protocols, including ZMQ. ZMQ is an IPC mechanism. There are other lower level mechanisms such as PIPEs and UDP sockets.

Does ZeroMQ use sockets?

ZeroMQ patterns are implemented by pairs of sockets with matching types. The built-in core ZeroMQ patterns are: Request-reply, which connects a set of clients to a set of services. This is a remote procedure call and task distribution pattern.


2 Answers

The question How to use Zeromq's inproc and ipc transports? mentions that IPC relies on POSIX named pipes, which Windows doesn't support.

You should be able to use TCP on a Loopback Interface instead without trouble.

like image 72
timotimo Avatar answered Sep 17 '22 18:09

timotimo


It is not supported on Windows, but TCP over localhost gives much the same performance as IPC, on Linux and OS/X and I'd just use that on Windows too.

like image 24
Pieter Hintjens Avatar answered Sep 17 '22 18:09

Pieter Hintjens