Have anyone used ZmqSocket.js successfully? I'd like to know how can it be used to establish a safe channel between the browser and a zeromq server app. Is there other/better options for such use case?
I've never used ZmqSocket.js, but I can tell you that it's probably not a good idea (yet). This is because zmq still assumes that both peers know the protocol well and will blow up if given invalid data (they are working on fixing that, though).
What I do right now is have a simple node.js based proxy that uses socket.io to communicate with browsers and pushes data in (and reads from) a zeromq socket, where the rest of the app is.
Update in 2013: I wrote sockjsproxy, which essentially proxies messages to/from sockjs and zeromq, allowing you to implement the server in any language you want by just implementing the (very simple) ZeroMQ-based protocol.
I've personally used it with Python and Scala servers to build real-time web apps.