Resources

Overview

Red Hat AMQ: Enterprise open source messaging broker

INTRODUCTION

Red Hat® AMQ is a standards-based, reliable open source messaging platform that provides real-time communication between applications, services, and devices. With near-universal compatibility, support for multiple protocols, and lightweight architecture, Red Hat AMQ can connect business applications, partners, mobile devices, and microcontrollers within the Internet of Things (IoT). A cost-effective subscription model and modular footprint makes Red Hat AMQ a practical alternative to proprietary solutions for deploying and maintaining a broker.

Red Hat has also pioneered messaging capabilities on cloud platforms with Red Hat AMQ for OpenShift® Container Platform. This offering lets users deploy messaging to Red Hat’s Platform-as-aService (PaaS) solution, as well as deploy, scale, and manage messaging components in the cloud. As a result, Red Hat AMQ supports hybrid environments with a consistent developer experience.

ARCHITECTURE

The core messaging engine of Red Hat AMQ, the broker, manages connections, state, configuration, and communications through the management console. The broker also implements wire protocols to offer multiple communications options. Red Hat AMQ 7 offers significant broker enhancements with reactive listeners. In addition, the broker’s high-availability capabilities have been enhanced to implement shared-nothing architecture, where storage or databases are no longer necessary to ensure normal operation and high availability.

The second major runtime component of Red Hat AMQ is a set of client libraries that can be compiled by external applications to provide communications back to the broker. With a wide range of field-proven clients, one Red Hat AMQ implementation can support every part of an enterprise IT landscape. Alternatively, developers can use an open protocol—such as MQTT (Message Queue Telemetry Transport) or AMQP (Advanced Message Queuing Protocol)—in place of a client for a specific application.

The final runtime component, the interconnect router, serves as the basis for wider area messaging traffic. Organizations can use this component to create a traffic network that spans intranets and geographical boundaries. The interconnect router abstracts the details of wide area delivery to provide clients with local access to the network, as well as access to distributed routing and self-healing capabilities in an as-a-Service format.

FEATURES AND BENEFITS

FEATURE BENEFIT
Reactive, asynchronous core
Nonblocking, reactive listeners guarantee
maximum response and resource efficiency
Cost-effective performance
Process the same amount of load with fewer hardware resources
Interconnect router
Support for creation of multiple, redundant paths over a wide area, even globally traversing security and virtual private network (VPN) boundaries safely and reliably—preferably with redundant paths, used to provide continued connectivity and processing resources
Easy distribution of data across wide area networks (WANs)
Create nodes that efficiently route information and adapt to outages by rerouting Reduce complexity of securing crossing network domains
Standards-based messaging
Support for:
•JMS 1.1 and 2.0, Transmission Control Protocol
(TCP)
•Secure Sockets Layer (SSL)
•User Datagram Protocol (UDP)
•STOMP (Simple or Streaming Text
Oriented Message Protocol)
•.NET Message Service (NMS)
•MQTT
•AMQP 1.0
•Multicast transport protocols
•WebSocket
•Other standards and protocols
Near-universal connectivity
Connect a mix of brokers and clients with
wire-level compatibility for seamless, reliable interaction with the IoT Flexible integration Use the browser as a messaging client for web development
Cross-language clients
Connectivity from client programs written in languages like JavaTM, C++, .NET, Python
Support for diverse development environments
Natively connect applications written in languages like Java, C, C++, C# Python, or .NET
Modular transports
Multiple transport protocols for xchanging data between broker and client or between brokers
Support for diverse networking environments
Flexibly meet the demands of different networking environments and use cases
Flexible persistence
Supports a variety of persistence options,
including:
•No persistence.
•Fast, native I/O for all platforms.
•A database via Java Database Connectivity
(JDBC).
Balance between reliability and performance
Achieve optimal reliability and performance with flexible persistence and high availability
RESTful API
Accesses the message broker service with a technology-neutral, web-based API
Simplified integration
Easily integrate with RESTful web services
JMS streams for large messages
Eliminates the JMS client bottleneck from
attempting to store a 1GB or larger message in memory
Massive application scalability
Reliably deliver massive files of many gigabytes across the network
gzip message compression
Compresses highly verbose messages
Efficient application scalability
Efficiently transport large amounts of data in Simple Object Access Protocol (SOAP) and other XML formats
Integration service management
Unified console can start, stop, measure, trace, and debug all Red Hat Fuse and Red Hat AMQ integration routes on premise or in the cloud
Unified management
Management of all services—regardless of deployment location—through a single interface
Security framework
Access broker control through Java Authentication and Authorization Service (JAAS), SSL encryption, and plug-in points to support custom and thirdparty authentication providers, firewalls, proxy servers, HTTP(S) tunneling—including DMZGlobal products
Simplified security administration
Use a single security framework to secure your environment
Role-based access control
Create roles with different levels of access to management console functions and add users to defined roles
Improved security and integrity
Use configurable access rules to control access to platform configurations and deployed integration services, reducing risk