Great service bus at a reasonable price
Use Cases and Deployment Scope
Azure Service Bus is used in many scenarios at Dynacare. We use Service Bus in Azure analogously to our RabbitMQ implementation we have on-premise. As a basic pub/sub, queue, or dynamic router pattern it works very well. We use it consistently for various messaging requirements such as webhook handling, or HL7 message queuing.
Pros
- Acting as a basic queuing service it works very well.
- One of the best parts is that Azure Service Bus can work over HTTPS which helps in strict firewall situations. There is a performance hit if you choose to use HTTPS.
- The routing capabilities are quite good when using topics and subscriptions. You can apply filters using a pseudo-SQL-like language though the correlation filters are quick and easy options.
- Costs are very reasonable at low-ish volumes. If you're processing 10's of millions of messages a month... it may be a different story.
Cons
- The SqlFilter could be a little easier to use, but it's not terrible.
- The performance while using HTTPS for the connection is a little slow compared to direct connections using AMQP ports.
- There is a size limit to the message - unlike RMQ for instance, Azure Service Bus caps messages to 256kb on the standard tier.
Most Important Features
- Price must be reasonable.
- Performance must be good.
- It must be easy to use.
Return on Investment
- Compared to open-source free software like RMQ, Azure Service Bus does have some costs to it. But the cost is reasonable.
- Also unlike RMQ, Azure Service Bus doesn't require you to stand up any hardware - so it's very easy to use and saves time/money from that perspective.
Alternatives Considered
Pivotal RabbitMQ
Other Software Used
Pivotal RabbitMQ, Azure App Service, Azure API Management

