Getting Started With RHM
From RHM
Contents |
Getting Started with Red Hat messaging
This page is designed to get you up and running with Red Hat Messaging. Within 20 minutes you should be able to download a server, start it, and compile and run a sample application. If you are not familiar with Red Hat Messaging, you can get a better understanding of what it does by reading http://rhm.et.redhat.com.
Note: Sample applications will be provided in the upcoming release.
Download Red Hat Messaging (M2 Release)
The Red Hat Messaging M2 release supports C++, Java, Python, or Ruby. The M2 release provides a Java based broker as well as a C++ based broker. The Java client and server are architecture independent.
The M2 release implements the AMQP 0-8 protocol, and is the best stable, general purpose platform for AMQP development, for the following reasons:
- M2 has been tested in production, and is known to have good stability and performance.
- M2 has both a C++ broker and a Java broker.
- M2 clients in all languages are compatible (C++, JMS, .NET, Python, Ruby), and can be used with either server.
- M2 passes 100% of the JMS TCK.
i386 packages for the M2 Release
These packages are C++ based, and offer superior performance for 32-bit Intel systems.
C++
- qpidc-0.1-5.M2.i386.rpm — Qpid shared libraries for C++. Needed by the C++ based server; also needed if you want to run Qpid client applications.
- qpidd-0.1-5.M2.i386.rpm — C++ based Qpid server, binaries for i386. Requires the Qpid shared libraries for C++.
- qpidc-devel-0.1-5.M2.i386.rpm — C++ client libraries, including header files, developer documentation, and symbolic links to shared libraries. Used to develop Qpid client applications in C++.
We provide doxygen documentation for the client API — to find out where this documentation has been installed on your system, use the following RPM command:
$ rpm -qal qpidc-devel | grep index.html
x86_64 packages for the M2 Release
These packages are C++ based, and offer superior performance for 64 bit Intel and AMD systems.
C++
- qpidc-0.1-5.M2.x86_64.rpm — Qpid shared libraries. Needed by the server; also needed if you want to run Qpid client applications.
- qpidd-0.1-5.M2.x86_64.rpm — Qpid server, binaries for x86_64.
- qpidc-devel-0.1-5.M2.x86_64.rpm — C++ client libraries, including header files, developer documentation, and symbolic links to shared libraries. Used to develop Qpid client applications in C++.
We provide doxygen documentation for the client API — to find out where this documentation has been installed on your system, use the following RPM command:
$ rpm -qal qpidc-devel | grep index.html
Architecture-independent packages for the M2 Release
These packages offer very good performance, though they perform less well than the C++ packages, and are architecture-independent.
Java
- qpid-1.0-incubating-M2-SNAPSHOT-java-bin.tar.gz — Java binaries, including server, client, and shared libraries.
- qpid-1.0-incubating-M2-SNAPSHOT-java-src.tar.gz — Java binaries, including server, client, and shared libraries.
- qpid-bdbstore-1.0-incubating-M2-SNAPSHOT.jar — Berkeley DB libraries that provide persistence for the Java based server, .
Python
- amqp-1.0-1.noarch.rpm — AMQP definition files, required for Python client.
- python-qpid-0.1-1.noarch.rpm — Python client.
- python-qpid-0.1-1.src.rpm — Source code for the Python client.
Ruby
- amqp-1.0-1.noarch.rpm — AMQP definition files, required for Ruby client.
- ruby-qpid-0.1-1.noarch.rpm — Ruby client.
- ruby-qpid-0.1-1.src.rpm — Source code for the Ruby client.
What was installed?
If you installed the above packages using the package installer, you may want to see what was actually installed for a given package. For instance, if you want to know what files were installed for the qpidd package, you could use the following command:
rpm -ql qpidd
Run the C++ based Qpidd broker
This section shows how to run the C++ based Qpidd broker, with and without persistence.
Command line options
The broker can be run with a variety of options. To see a list of these options, type:
$ man qpidd
or
$ /usr/sbin/qpidd --help
Starting the broker
By default, Qpidd is installed in /usr/sbin/qpidd, which is normally not on your path. You can start the broker on the command line by specifying the full path:
$ /usr/sbin/qpidd
If the server starts successfully, you will see messages similar to these:
$ /usr/sbin/qpidd -t Persistence not enabled, no recovery of queues or messages. Listening on port 5672...
The warning about persistence informs you that you do not have guaranteed delivery unless a persistence library is specified. Persistence is not supported for the C++ based broker in the M2 release, but it is available for the Java based broker (see above), and will be available for the C++ based broker in the next release.
