by: Arvicco url: http://github.com/arvicco/zmqp

Description

Asynchronous AMQP library sets a standard for messaging. It is well documented and has clean and simple interfaces for most common messaging tasks. However, it implements AMQP standard that has some serious problems and limitation.

ZeroMQ offers a viable alternative to AMQP, as well as 3-10 times performance boost for most common messaging tasks. However, its interfaces are a very similar to socket programming and look a bit frightening for uninitiated.

This library wraps ZeroMQ/ZMQMachine with interfaces that are very similar to the ones offered by tmm1/amqp. That way, you'll be able to leverage your existing code developed for AMQP, getting additional benefits such as:

  • Performance boost (3-10 times for most common messaging tasks)
  • No broker-related bottleneck for high-throughput applications
  • Ability to flexibly extend your messaging architecture
  • No external dependency on 3rd-party broker software (such as RabbitMQ)

Because ZMQis inherently threaded, it does not make sense to use this library with anything less than MRI 1.9.2, JRuby or Rubinius. MRI 1.9.1 may or may not work, MRI 1.8.7 and its below are broken beyond repair (as far as threading goes).

!!! Currently this library is at pre-alpha stage. Please do not use it for anything serious.

Getting started

First things first, start with:

$ gem install zmqp

Documentation

To be added...

Credits

(c) 2010 Arvicco

This project was inspired by tmm1/amqp. It is based on ZMQMachine. Special thanks to Aman Gupta and Chuck Remes.

Resources

== LICENSE: Copyright (c) 2010 Arvicco. See LICENSE for details.