In a connected world it is important for cloud based
applications to be able to communicate and integrate with on premise and
online business applications. Microsoft has OOTB and custom options
that integrate Dynamics 365 with other business applications using the
Azure platform. This blog is to discuss the Azure Service Bus options. The 2nd part of this blog will discuss the Dynamics 365 integration.
Why use Azure?
Azure Service Bus is a reliable, enterprise level message
delivery service. The benefits of using Azure cloud messaging platform
includes –
1. Integrate between cloud to cloud or cloud to on premise business applications
2. Increase availability, security and scalability of systems
3. Cost effective and easy to manage
Azure Service Bus provides 3 communication mechanisms – Queues, Topics and Relays.
1. Queues – In a Queue, the sender sends a message to the
Azure Service Bus Queue where it stays. When the Receiver connects to
the Queue it gets the message. Queues are useful for batch and mobile
applications.
Fig-1 - Queues
2. Topics – The sender sends a message to the Topic and it
will stay there. There can be one or many receivers. The receivers can
all receive the messages. The receiver can also filter the message they
receive using their subscription.
Fig-2 - Topics with filtered Subscriptions
Relay – Relays provide 2 way / Direct communication link between Sender
and Receiver. The Sender and Receive are both connected to the Relay
using TCP/IP. This overcomes the Firewall and NAT problems faced with
direct connections between 2 applications. Relay is created when the
Receiver connects to Azure and a link is establish with the Sender. As
soon as the connection drops the Relay is deleted.
Fig-3 - Relays - Direct link
Description
|
Queues
|
Topics
|
Relays
|
Communication
|
One directional
|
One directional
|
Bi-directional
|
Distribution
|
1 message to 1 recipient
|
1 message to many
Recipients
|
Direct connection
|
Type
|
Asynchronous
|
Asynchronous
|
Synchronous
|
Filtering
|
No
|
Recipients can filter
messages using subscriptions
|
No
|
In summary the right option needs to be selected for Azure
Service Bus connection with business applications. In the next blog I
will write about using Queues to publish data from Dynamics 365 to Azure
Service Bus without writing any code.
Thanks for reading!!