ZeroMQ is amazing. The last few months I have been using it for all kinds of things -- from creating multiprocessing Python apps to replacing an HTTP REST backend with a high-performance ZeroMQ server.
ZeroMQ is more like an interesting sockets library. It's really not very much like AMQP or XMPP.
The "Zero" in ZeroMQ means there is no broker (server) between the publisher and the subscribers. Instead what happens is that each process runs a separate thread which deals exclusively with ZeroMQ messaging.
Another effect of having no broker is there is no disk persistence at all, so unless you take your own steps you will lose messages if any component crashes.