Fast, reliable and scalable load balancing for Connext® DDS applications
RTI Queuing Service enables point-to-point messaging in Connext® DDS. It brokers interactions between message producers (DDS Data Writers) and consumers (DDS Data Readers), delivering each message (DDS sample) to only one consumer. This balances workloads by distributing jobs across a pool of processors to address application-to-application data exchange at both the network edge and in the cloud. This takes distributed data processing to a new level of scalability with minimal end-to-end latency.
- Implements one-to-one queuing communication pattern
- Load balances publish-subscribe and request-reply interactions
- Persists messages in memory or to disk
- Supports fully redundant transactional messaging for high availability and fault tolerance
- Provides an API for remote administration and monitoring
- Implements dead-letter queue for analyzing message delivery failures
- Works seamlessly with RTI infrastructure services and tools
- Can replace other brokers including AMQP and RabbitMQ
Features and Benefits
Efficient Data Processing
Message queues provide a foundation for elastic distributed processing. They store messages and deliver each reliably to exactly one consumer. Message queues enable implementation of scalable and high performance data analytics through load balancing and efficient job allocation.
Multiple consumers (Data Readers) can collaborate, coordinate and balance workload. The Data Readers can reside within the same process, different processes or even different machines.
Enterprise Integration Patterns
With the RTI Queuing Service, Connext DDS supports all the fundamental communication patterns used in the IIoT. In addition to publish-subscribe for distributing streaming data and asynchronous events, it adds queuing for scalable processing and request-reply for controlling and managing devices. This eliminates the need to adopt and integrate different technologies for each of these requirements, reduces integration costs and simplifies administration.
In the queuing communication model, each message is delivered to a single Data Reader in a round-robin manner. Based on the dispatch mode configured for a queue, Queuing Service will dispatch a message to a Data Reader that has explicitly indicated its availability, has acknowledged all its previous messages, or is under a specified threshold of unacknowledged messages.
In a request-reply communication model, a Requester Application sends a sample to a Shared Reader Queue. A replier application receives the sample from the Shared Reader Queue and returns a response to the requester application.
Queues and service configuration can be replicated across Queuing Service instances. A master-slave architecture guarantees availability of the Queuing Service at any time.
Queuing Service includes a REST-like API for remote administration. Supported operations include queue creation, deletion and introspection. Transactions can also be monitored by subscribing to the underlying publish/subscribe interactions.
RTI Queuing Service is an optional add-on component to RTI Connext DDS Professional.