Topology for new ASB (forwarding topology)

Hi,

I have a question on how the forwarding topology is intended to be used at scale. Is the intent that you have a single topic that all events of all applications are published to? And then forward messages to one or more topics that can be subscribed to?

Or is it the intent that applications publish to multiple topics and subscriptions are to one or more topics?

Either case would result in multiple endpoints for an application that publishes and subscribes to multiple messages (from different topics).

The samples only include a single topic. I have not been able to find clear guidance on how this scales out.

Hi Marco,

Legacy Azure Service Bus used to have an option of multiple topics but that was not necessary as it doesn’t provide any value. On contrary, it complicates the matters. The option was deprecated later.

The current ASB transport only allows single topic messages are published to. The topology is internal to the transport and you don’t need to manage it*. The endpoints subscribe and publish and the transport takes care of it. Here’s the document describing how it works.

* you can override the topic name if it conflicts with an already existing topic

Hi Sean,

Thank you! Is it the intent that all applications across the enterprise publish to a single topic? Or would each application publish to a separate topic?

Topics have limitations when it comes it to the number of subscriptions and SQL filters that are allowed. Once you start hitting those limitations, would you start forwarding between topics?

Hi Marco,

Is it the intent that all applications across the enterprise publish to a single topic? Or would each application publish to a separate topic?

I would say across the entire system you’re building. The enterprise might have more than one system and those would be using different namespaces. In case systems need to interact, they’d use a shared namespace.

Topics have limitations when it comes it to the number of subscriptions and SQL filters that are allowed. Once you start hitting those limitations, would you start forwarding between topics?

There’s no forwarding. The limits on the number of endpoints and events per system are documented in the topology article.

The ForwardingTopology supports up to 2,000 endpoints with up to 2,000 events in total. Since multiple rules per subscriptions are used, topics cannot be partitioned.