Hi everyone,

I wrote a core.async-based wrapper for ZeroMQ: 
https://github.com/lynaghk/zmq-async

ZeroMQ is a message-oriented socket library with bindings to lots of 
languages and support for a variety of communication styles (request/reply, 
publish/subscribe, in-process pair sockets, push/pull, &c.).
The biggest issue I had using ZeroMQ directly in Java (via the jzmq 
bindings) is that the socket objects aren't thread safe.
You have to be careful when you want to, e.g, have worker threads send 
completed work over the same socket to a consumer.
This library sets up two message pump threads on your behalf and exposes 
ZeroMQ sockets to you with core.async channels.

Rather than trying to wrap all ZeroMQ socket options, the library accepts a 
configurator function that twiddles newly created socket objects.
(Similar to how Ring's Jetty adapter lets you twiddle the Jetty server.)
You'll need ZeroMQ 3.2 installed on your machine, but the JAR includes 
native JNI bindings for Linux x64 and OS X x64.

The only other up-to-date ZeroMQ library for Clojure that I'm aware of is: 
https://github.com/zeromq/cljzmq

Right now there isn't a non-SNAPSHOT core.async release, so I cannot 
release a 0.1.0 of this library.
However, I have been using it for several weeks on a few different projects 
and don't anticipate making any changes to the (very tiny) API.

Big thanks to: Brandon Bloom, Zach Allaun, Zach Tellman, Alex Miller, 
Timothy Baldridge, and Rich Hickey for help with designing+coding this 
library.

cheers,

Kevin

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to