Dynamic Message Routing
The underlying technology for an event mesh is Dynamic Message Routing (DMR). As your enterprise grows, you may find that your individual
Enterprise applications also become distributed across multiple sites—which can include multiple public and private clouds
Dynamic Message Routing (DMR) is a mechanism that allows connected nodes to automatically determine how to forward event messages
DMR supports two basic use cases: horizontal scaling and multi-site scaling. More complicated topologies are possible. If the use cases discussed here don't address your needs, contact Solace for assistance with designing and implementing your DMR mesh.
For horizontal scaling, you connect brokers together to create a DMR cluster. Each node (
DMR clusters are typically used for software and hardware event brokers at the same site. PubSub+ Cloudevent broker services are usually set up as single-node cluster and don't use horizontal scaling.
In multi-site scaling, you connect two or more clusters together. Connections between clusters are called external links. Each cluster is connected together via a gateway node in each cluster.
Let's take a look at how DMR works in a scenario. The diagram below shows a horizontally-scaled cluster on-premises, which is connected to a DMR cluster in the public cloud (AWS in the example) and another cluster
A publishing application (A) comes online and publishes to a topic, let's say
tools/orders. A consuming application (B) in the same cluster comes online, binds to its queue, and subscribes to topic
tools/orders. Events flow from application A to application B, preserving the quality of service (guaranteed or direct) of the publishing application A.
In addition, all subscriptions are shared between connected clusters. This means that event messages published by an application in one cluster are seamlessly routed to consuming application in other clusters.
In the example below, another consumer (C) comes online and subscribes to the same topic,
tools/orders. Any event with topic
tools/orders is now routed to the new consumer. As more publishers and consumers connect and disconnect, the routing is dynamically updated in the mesh.
DMR and VPN bridges are two alternate technologies that can be used to interconnect brokers. Both support guaranteed (persistent) and direct (non-persistent) messages. The advantage of DMR over VPN bridges is that with DMR you don’t need to statically configure topic subscriptions to define which events flow over the inter-broker links. DMR automatically routes your guaranteed and direct messages through your event mesh to all interested subscribers.
The PubSub+ Broker Manager includes a Click-to-Connect wizard that can easily create a DMR mesh in a few mouse clicks. Click-to-connect is also provided for VPN bridges, but you must then configure the topics that the bridges subscribe to.
When you want to strictly control which events go over an inter-broker link, you should use VPN bridges. When you want to build a large event mesh with minimal configuration effort and dynamic propagation of subscriptions throughout the mesh, DMR is the recommended choice.
- Disaster Recovery (Replication)
- You can take advantage of disaster recovery (using replication and Config-Sync) within your DMR network (or event mesh). Replication provides business continuity and allows mission‑critical applications to continue to function during a major service outage to a data center. For more information, see Data Center Replication for Disaster Recovery and Configuring Replication with a DMR Network.
- Message VPN Bridging
- Bridging and DMR are compatible, and can be used at the same time. However, we recommend that you don't configure VPN bridge links and DMR links between the same event brokers because this configuration causes duplicate message delivery.
- Multi-Node Routing
- Multi-Node Routing (MNR) and DMR cannot be used at the same time. They are mutually exclusive.
If you want to migrate from MNR to DMR, contact Solace for assistance.
- To delve deeper into the specifics of how DMR works, see DMR Subscription Propagation and Data Forwarding.
- For a high-level view of how to set up an event mesh, see Setting up an Event Mesh Using DMR.
- Take a look at the examples to see how to configure Horizontal Scaling and Multi-Site Connectivity.