Logo
IT Dienstleistungen

REDS

REDS (REconfigurable Dispatching System) is a framework of Java classes to build publish-subscribe applications for large, dynamic networks.

Distributed publish-subscribe applications are organized as a collection of components, which interact by publishing messages and by subscribing to the classes of messages they are interested in. Publish-subscribe applications are built around a publish-subscribe middleware, which provides a dispatcher, responsible for collecting subscriptions and forwarding messages from publishers to subscribers, and a library to access the services of the dispatcher and implement application components.

REDS provides the client API to write publish-subscribe applications and defines a general framework of components, with clearly defined interfaces, to build a distributed dispatcher organized as a set of brokers linked in an overlay dispatching network, which collaborate to route messages from publishers to subscribers.

REDS' innovative features

With respect to other publish-subscribe middleware REDS provides several innovations:

  • Its modular architecture allows system integrators and middleware programmers to easily adapt REDS to their needs, e.g., by defining their own format for messages and filters, the mechanisms used internally by each broker to match and forward messages, and the strategy for routing messages, just to mention the most relevant aspects.
  • REDS is the first publish-subscribe middleware expressly designed to support arbitrary topological reconfigurations of the message dispatching network. Each REDS broker includes two modules, the TopologyManager and the Reconfigurator, which embed the logic used to manage run-time reconfiguration of the dispatching network, either to react to changes in the underlying phisical network or to adapt it to the application's needs, e.g., to balance the traffic load, or to change the number of brokers and their connectivity.
  • Finally, REDS natively supports replies to messages, thus naturally providing bidirectional communication within the framework of content-based publish-subscribe communication. REDS brokers keep track of the transit of messages tagged as Repliable and store routes followed back by replies.
  • By supporting replies natively, REDS brokers are able to track the number of expected replies for each message and check if and when all of them have been received—a feature that cannot be obtained by implementing replies at the application level.

Seiten-Werkzeuge