We all know about Windows Azure Service Bus and how it allows features like Relay, Messaging and even integration. Personally this is one of my favorite features in Windows Azure but all this only worked in the Cloud and sometimes the same features and capabilities would be very good if they were available On-Premises also. That’s exactly what Service Bus 1.0 is, it’s getting those capabilities and features to the On-Premises world also, making it easier to have a complete parity between Cloud and On-Premises.
Of course this version isn’t still the full version of what we see on the Windows Azure version but will help a lot, I’m sure. This Beta is what the Team calls “Service Bus Messaging Engine” release as stated by Clemens Vasters in one of his responses at StackOverflow, and so this version still doesn’t have any features related to the Relay part, but only with the Messaging part.
Another very important part of this release is that by using it we’ll start getting the same (or at least very similar at this moment) API for both Cloud and On-Premises versions, which make things a lot easier when we build solutions that need to be deployed in both.
For more information about Service Bus 1.0 Beta check here.
In terms of Architecture, this version has the following:
(Figure 1 – Service Bus 1.0 Architecture from Windows Azure site)
So we can see that all this uses very well known elements like, SQL Server, PowerShell, .NET Framework, and the 3 most important elements of it are:
Service Bus Gateway
Receives all the incoming requests and provides the necessary Authentication, Authorization as well as address resolution sending then the request for the appropriate block so it can be handled.
Currently only allows communications using NET.TCP or REST over HTTP protocols.
(Figure 2 – Service Bus Gateway High-level Architecture – Windows Azure Site)
Service Bus Message Broker
Responsible for providing the Messaging capabilities, so can be seen as the Service Bus Messaging Engine.
Provides Queues and Topics/Subscriptions features to this release.
(Figure 3 – Service Bus Message Broker High-level Architecture – Windows Azure Site)
Provides capabilities like High availability, farm and cluster formation as well as load balancing across farm machines.
We can think about it as being the ‘orchestrator’ of all services since all services will connect to it in order to have those capabilities and be able to work in a success way and with high quality.
So by releasing Service Bus 1.0 (Beta) Microsoft is actually showing that they were really serious when they were saying that they were working on lowering the differences between Cloud and On-Premises and bringing the best solutions to both worlds.
What I believe this will bring to customer is:
- Highly-Scalable (and proven) Messaging System
- Parity between Cloud and On-Premises making it possible to code once and work on both deployments.
Hope this post helps you better understand what’s Service Bus 1.0 (Beta) is all about and you can expect future post around this topic going deeper in terms of how to use it and benefits of it.