[zeromq-dev] CZMQ and Server and Client Sockets

Doron Somech somdoron at gmail.com
Fri Aug 14 15:09:13 CEST 2015

Hi All,

I added server and client sockets support to CZMQ, you can take a look at
the change at the following pull request:


Server socket is like router socket except you don't have an identity
frame, each message also include routing id which is an int (vs byte
array). So each message coming from a server socket include a routing id
which can be retrieve by calling zframe_routing_id. When sending a message
you must set the routing id by calling zframe_set_routing_id. You can use
zframe_send_reply with both the destination frame and the source frame
(which include the routing id), the method copy the routing id from the
source frame to the destination frame and then send the message.

Client socket is same as dealer socket. Client and Server can only talk to
each other.

Following is a small example on how to use the new client and server

Client and server socket are thread safe (currently only support single
frame messages but that might change, I think) so if your protocol is
single frame you can use the server and client sockets from multiple

Polling on multiple client or server sockets is not supported yet.

In the coming week I plan to also add zproto support and complete the
polling on multiple sockets.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20150814/2f717caa/attachment.htm>

More information about the zeromq-dev mailing list