NServiceBus is built on top of existing queuing technologies. In NServiceBus, the choice of queuing technology is referred to as a "Transport".

Types of transports

NServiceBus transports can be divided into several categories.

Bus transports

Bus transports are inherently distributed. Each endpoint instance might potentially connect to a different node of the bus. Messages are routed transparently between the nodes but the physical routing layer needs to contain information as to which bus node a particular endpoint is connected to.

Bus transports include:

Broker transports

Broker transports are inherently centralized. Even if there are multiple servers, they act as a single logical entity that hosts all the queues (and/or topics).

Broker transports include:

Unicast-only transports

Unicast-only transports do not have a notion of topic; only queues. Because of this, they allow only point-to-point communication. Sending message to multiple receivers (e.g. publishing an event) is composed of multiple transport-level sends. Unicast-only transports require a subscription storage be configured.

Unicast-only transports include:

Multicast-enabled transports

Multicast-enabled transports have some notion of a topic, or a similar concept, which allows sending a message once and having it received by multiple clients. These transports do not require a subscription storage to be configured.

Multicast-enabled transports include:

Community-maintained transports

There are several community-maintained transports which can be found in the full list of extensions.


WebSphereMQ Transport for NServiceBus is not supported by Particular Software at this time. The code is available on GitHub as-is, for legacy, community use and reference. Contact support for licensing and support details.


Related Articles

Last modified