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 |