I'm interested in finding out if ZMQ already compresses messages before sending them out so as to not do this myself which would be redundant to compress a message twice.
If it does do this is it automatic, or is there an option param to specify?
I'm using java but it really doesn't matter I guess for libzmq it doesn't matter.
ZMQ is not performing any serialization. You can send messages via socket as String or byte[]. See example here: http://zguide.zeromq.org/java:wuserver
publisher.send(update, 0);
where update is String.
In general I recommend guide here http://zguide.zeromq.org/page:all