1.5. Asynchronous Communication

JMS broker

You can optionally install a broker instance, typically Apache ActiveMQ, into the Red Hat JBoss Fuse container, to provide support for asynchronous communication between bundles in the container. Apache ActiveMQ is a sophisticated implementation of a JMS broker, which supports asynchronous communication using either queues or topics (publish-subscribe model). Some of the basic features of this JMS broker are as follows:
  • VM protocol—the Virtual Machine (VM) transport protocol is ideal for communicating within the container. VM is optimized for sending messages within the same JVM instance.
  • Persistent or non-persistent messaging—you can choose whether the broker should persist messages or not, depending on the requirements of your application.
  • Ease of use—there is no need to create and configure destinations (that is, queues or topics) before you can use them. After connecting to a broker, you can immediately start sending and receiving messages. If you start sending messages to a queue that does not exist yet, Apache ActiveMQ creates it dynamically.
  • External communication—you can also configure a TCP port on the broker, opening it up to external JMS clients or other brokers.
For details of how to set up a JMS broker in Red Hat JBoss Fuse, see Chapter 14, JMS Broker.