Qpid provides the most complete and compatible implementation of AMQP and is the most aggressive in implementing the latest version of the specification. Qpid can be downloaded here.
There are two brokers:
There are client libraries for C++, Java (JMS), .Net (written in C#), python and ruby.
QMF Management is supported in Ruby, Python, C++, and can be translated to Java JMX & WS-DM via the QMan management tool.
Qpid implements the AMQP Specification, and as the specification has progressed Qpid is keeping up with the updates. This means that different Qpid versions support different versions of AMQP. Here is a simple guide on what to use.
Here is a matrix that describes the different versions supported by each release
Y = supported
N = unsupported
IP = in progress
P = planned
| Component | Spec | |||||||
|---|---|---|---|---|---|---|---|---|
| M2.1 | M3 | M4 | 0.5 | 0.6 | 0.8 | 0.10 | ||
| Java client | 0-10 | Y | Y | Y | Y | Y | Y | |
| 0-9 | Y | Y | Y | Y | Y | Y | Y | |
| 0-8 | Y | Y | Y | Y | Y | Y | Y | |
| Java broker | 0-10 | Y | Y | Y | ||||
| 0-9 | Y | Y | Y | Y | Y | Y | Y | |
| 0-8 | Y | Y | Y | Y | Y | Y | Y | |
| C++ client/broker | 0-10 | Y | Y | Y | Y | Y | Y | |
| 0-9 | Y | |||||||
| Python client | 0-10 | Y | Y | Y | Y | Y | Y | |
| 0-9 | Y | Y | Y | Y | Y | Y | Y | |
| 0-8 | Y | Y | Y | Y | Y | Y | Y | |
| WCF channel | 0-10 | Y | Y | Y | ||||
| Ruby client | 0-10 | Y | Y | Y | Y | |||
| 0-8 | Y | Y | Y | Y | Y | Y | ||
| C# client | 0-10 | Y | Y | Y | Y | |||
| 0-8 | Y | Y | Y | Y | Y | Y |
Above table represented in another format.
| Component | Release | 0-8 | 0-9 | 0-10 |
|---|---|---|---|---|
| Java client | M3, M4, 0.5, 0.6, 0.8, 0.10 | Y | Y | Y |
| Java client | M2.1 | Y | Y | N |
| Java broker | 0.6, 0.8, 0.10 | Y | Y | Y |
| Java broker | M3, M4, 0.5 | Y | Y | N |
| Java broker | M2.1 | Y | Y | N |
| C++ client/broker | M3, M4, 0.5, 0.6, 0.8, 0.10 | N | N | Y |
| C++ client/broker | M2.1 | N | Y | N |
| Python client | M3, M4, 0.5, 0.6, 0.8, 0.10 | Y | Y | Y |
| Python client | M2.1 | Y | Y | N |
| WCF channel | 0.6, 0.8, 0.10 | N | N | Y |
| Ruby client | M4, 0.5, 0.6, 0.8 | Y | Y | Y |
| Ruby client | M3 | Y | Y | N |
| C# client 0-10 | M4, 0.5, 0.6, 0.8 | N | N | Y |
| C# client 0-8 | M3, M4, 0.5, 0.6, 0.8 | Y | N | N |