NServiceBus Queue Naming Conventions

Has anyone developed a suitable naming convention for MSMQ queues when using NServiceBus, where there are many queues on one server, as well as on other servers?

The system I am developing will have many discrete subbriberies on many servers, and some unrelated applications will run on some servers.

It would be nice to open the msmq management console and immediately find out the target for all queues.

Greetings

+4
source share
3 answers

I am sure that you will find many different ways to do this, as you will find developers.

We actually have no queues without NServiceBus, so we don’t need to prefix them with β€œnsb_”, as suggested by Adam Fyles.

We like to make dot-separated notations that roughly mimic class namespaces, such as "project_name .QueueName".

Or for really large projects, where there is a wider analysis of the boundaries of the service in the Udi style, we will do something more like "BigProjectName.ServiceName.QueueName".

We have an NServiceBus cluster that runs our distributors, and that is where we find our error queue, so each endpoint uses something like "Error @NSBCluster". This allows us to control the system from one place.

+3
source

What am I doing

  • ApplicationName.Input
  • ApplicationName.Error
  • ApplicationName.Input.Audit
+1
source

We use the nsb_ $ endpoint_ $ function, where $ function = error or audit. The $ function is disabled only for the endpoint. We also map the display name and the service name when setting up the host. Our administrators love to match the service process, and then the queue.

+1
source

Source: https://habr.com/ru/post/1379555/


All Articles