Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

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:

C++ with support for AMQP 0-10
Java with support for AMQP 0-8, 0-9, and 0-10.

There are client libraries for C++, Java (JMS), .Net (written in C#), python and ruby.

  • All clients support 0-10 and interoperate with both brokers as of 0.6.
  • The JMS client supports 0-8, 0-9 and 0-10 and interoperates with both brokers.
  • The python and ruby clients will also support all versions, but the API is dynamically driven by the specification used and so differs between versions. To work with the C++ broker you must use 0-10. To work with the Java broker you can use any version as of 0.6, or prior to 0.6 you can use 0-8 or 0-9.
  • There are two separate C# clients, one for 0-8 that interoperates only with the Java broker, and one for 0-10.
  • There is also a WCF channel, which wraps the 0-10 native C++ client library.

QMF Management is supported in Ruby, Python, C++, and can be translated to Java JMX & WS-DM via the QMan management tool.

AMQP Compatibility of Qpid releases:

...

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

trunk

M4

0.5

0.6

Java java client

0-10

 

Y

Y

Y

Y

 

0-9

Y

Y

Y

Y

Y

 

0-8

Y

Y

Y

Y

Y

Java java broker

0-10

 

 

 

 

Y P

 

0-9

Y

Y

Y

Y

Y

 

0-8

Y

Y

Y

Y

Y

C c++ client/broker

0-10

 

Y

Y

Y

Y

 

0-9

Y

 

 

 

 

Python python client

0-10

 

Y

Y

Y

Y

 

0-9

Y

Y

Y

Y

Y

 

0-8

Y

Y

Y

Y

Y

ruby Ruby client

0-10

 

 

Y

Y

Y

 

0-8

Y

Y

Y

Y

Y

C# client

0-10

 

 

Y

Y

Y

 

0-8

Y

Y

Y

Y

Y

WCF channel

0-10

 

 

 

 

Y

Interop table by AMQP specification version

Above table represented in another format.

 

release

0-8

0-9

0-10

Java client

M3 M4 0.5 0.6

Y

Y

Y

Java client

M2.1

Y

Y

N

Java broker

0.6

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

N

N

Y

C++ client/broker

M2.1

N

Y

N

Python client

M3 M4 0.5 0.6

Y

Y

Y

Python client

M2.1

Y

Y

N

Ruby client

M4, 0.5, 0.6

Y

Y

Y

Ruby client

M3

Y

Y

N

C# client 0-10

M4 0.5 0.6

N

N

Y

C# client 0-8

M3 M4 0.5 0.6

Y

N

N

WCF channel

0.6

N

N

Y