Erlang binding for 0MQ (v2)
C Erlang Python Makefile
Latest commit 573d583 Jun 4, 2016 @yrashk yrashk Merge pull request #71 from kakada/master
Correcting zeromq download URL
Permalink
Failed to load latest commit information.
c_src Correcting zeromq download URL Jun 3, 2016
doc Use zeromq2-1 repo and v2.1.4 by default Apr 2, 2011
include Allow binaries to be used in bind & connect Mar 22, 2013
perf Add benchmarking tool Mar 30, 2011
src Allow binaries to be used in bind & connect Mar 22, 2013
test Fix remaining problems that occur infrequently when running the eunit… Mar 5, 2013
.gitignore
LICENSE Make the NIF more robust. Guard non-reentrant ZeroMQ sockets. Provide… Mar 27, 2011
Makefile Fix Makefile to use system rebar Oct 27, 2015
README.md
UPGRADING3.1.md
rebar.config

README.md

erlzmq2

NIF based Erlang bindings for the ZeroMQ messaging library.

Copyright (c) 2011 Yurii Rashkovskii, Evax Software and Michael Truog

Overview

The erlzmq2 application provides high-performance NIF based Erlang bindings for the ZeroMQ messaging library.

Downloading

The erlzmq2 source code can be found on GitHub

$ git clone http://github.com/zeromq/erlzmq2.git

Building

Please note that to behave properly on your system ZeroMQ might require some tuning.

Build the code

$ make

If you want to build against a specific version of ZeroMQ in the 3.1 series (not v3.1.0), use this:

$ ZEROMQ_VERSION=v<VERSION> make

Be aware that this will almost assuredly not work correctly for any versions of zeromq that are not in the 3.1 series.

Build the docs

$ make docs

Run the test suite

$ make test

Run the benchmarks (requires python and matplotlib)

$ make bench

This will run performance tests and output png graphs in the graphs directory.

Architecture

The bindings use Erlang's NIF (native implemented functions) interface to achieve the best performance. One extra OS thread and one pair of inproc sockets by context are used to simulate blocking recv calls without affecting the Erlang virtual machine's responsiveness.

License

The project is released under the MIT license.