The Qpid project offers two kinds of components, messaging APIs for building AMQP applications, and messaging servers for deploying AMQP networks. You can use them together to build robust distributed applications.
Messaging APIs give your application a tool for efficient, high-level interprocess communication.
Qpid offers three messaging APIs. Qpid Proton is a reactive API with full-spectrum AMQP control. In addition to being a messaging API, Qpid Proton is used by other Qpid components to implement AMQP 1.0 protocol support. Qpid JMS is an AMQP-fluent implementation of the widely used Java Message Service API. The Qpid Messaging API is a connection-oriented API that supports many languages.
The term "client" is often used to refer to messaging APIs, but some messaging APIs, such as Qpid Proton, can be used to implement any kind of messaging component, including clients, servers, bridges, and proxies.
Messaging servers are message-transfer intermediaries that provide additional behaviors such as store-and-forward for improved reliability.
The Qpid message brokers are full-featured message-oriented middleware brokers. They offer specialized queueing behaviors, message persistence, and manageability. Qpid offers pure-Java and native-code implementations, the Broker for Java and the C++ broker.
Dispatch router is a new kind of messaging server. It allows you to build redundant router networks connecting clients, brokers, and standalone services.
|C++ broker||-||Linux, Windows||1.0, 0-10|
|Broker for Java||-||JVM||1.0, 0-10, 0-9-1, 0-9, 0-8|
|Qpid JMS||Java||JVM||1.0, 0-10, 0-9-1, 0-9, 0-8|
|Qpid Messaging API||C++, Perl, Python, Ruby, .NET||Linux, Windows||1.0, 0-10|
Any Qpid components that share an AMQP version can interoperate. For instance, the brokers are implemented in C++ and Java respectively, but they do not require C++ or JMS clients for communication.
Apache Qpid, Messaging built on AMQP; Copyright © 2015 The Apache Software Foundation; Licensed under the Apache License, Version 2.0; Apache Qpid, Qpid, Qpid Proton, Proton, Apache, the Apache feather logo, and the Apache Qpid project logo are trademarks of The Apache Software Foundation; All other marks mentioned may be trademarks or registered trademarks of their respective owners