[zeromq-dev] ZeroMQ on AIX

Martin Sustrik sustrik at 250bpm.com
Sat Aug 6 09:27:46 CEST 2011


Hi Gonzalo,

> 1. Anybody has experience with 0MQ on AIX? Any hints, pointers or
> caveats? I am assuming 0MQ has been ported to AIX, to begin with!!!

It's been done, however, the builds are not done automatically, so you 
have to check whether latest version haven't broken AIX compatibility 
since it was last checked. In case you have an Internet-facing AIX box 
available, we can add it to the build cluster, thus assuring 0MQ always 
works on AIX.

> 2. The requirements are very simple and the model looks sound, but I
> just wanted to run it by the list. Any thoughts? In particular, I would
> like to set an HWM on the daemon’s incoming Sub socket to a high value,
> in the hopes that I will not miss any notifications from the client(s).
> What is a good number for this high value? What impact does that number
> have on resource usage on the daemon?

The incoming messages have to be stored till they are processed, if you 
set high HWM on server, they'll be stored at server. If you set low HWM 
on server, they'll be stored at the clients. High HWM has no impact on 
memory usage when there are no messages to store.

> 3. What version of the 0MQ library should I use? I would rather stick to
> the latest, which I understand is 3.x, but I am not sure if there are
> any instabilities that could impact this (admittedly simple) use case.

Depends on what you need. If all you need is passing all the messages to 
the server, 2.1.x would be good. If the server can ask only for a subset 
of messages and you want clients to filter the messages and avoid 
passing unneeded messages over the network you'll need 3.0.x (there's 
subscription forwarding feature there).

> 4. I will need to generate UUIDs in the client program. This is not very
> portable and is rather a pain in the ass (never done it before on AIX).
> Does 0MQ export its UUID generation function? It would come in really handy…

No it does not. The dependency on libuuid is removed in post-3.0.x 
versions so it's not a good idea to expose it now just to remove it later.

Here's the code that generates UUIDs on AIX:

https://github.com/zeromq/zeromq2-1/blob/master/src/uuid.cpp#L130

Martin



More information about the zeromq-dev mailing list