How to go about implementing transport layer for Pulsar?

We are looking at NServiceBus but also Pulsar for our event streaming needs. Are there any plans to implement transport layer based on Pulsar for NServiceBus? I am looking for some guidance as far as what is required to do so.


I hardly have any knowledge of Pulsar, but from what I can read Pulsar is indeed a message broker like Azure Service Bus and RabbitMQ. With Pulsar Functions you get the capability for event streams, also it’s explained as capability for stream-native data processing and I’m not sure if that indeed implies the same thing.

To answer your question, it’s not very likely we’ll be able to support Pulsar in the near future. We have very few questions related to Pulsar support in the past years.

Is there a reason you can’t use any other technology like RabbitMQ, Azure Service Bus or anything else we support?

Is there a guide for implementation? We want to use unified messaging platform if possible.

Hi Edvard,

It is possible to implement your own transport for NServiceBus for the Pulsar part that is related to messaging. Usually the best way to start is to take a transport that is fairly similar (i.ex. RabbitMQ) and use that as a template to get started implementing the transport.

We have a suite of acceptance tests and transport tests that when passing should give you a high degree of confidence that the transport is doing what NServiceBus expects from a transport.

I be also happy to guide you a bit through the process should you be willing to make the transport open source by pointing out a few things on the repository as well as answering questions over the support channels.