Page 25 - MSDN Magazine, February 2018
P. 25

Procurement
occur, they’re published to an endpoint called a topic that the Event Grid service manages to digest all incoming messages. The list of services on Azure that integrate with Event Grid is growing, with many more on the horizon.
Event publishers aren’t limited to services on Azure. In fact, a very common use case includes events that originate from custom applications or systems that can run from anywhere. This includes applications that are hosted on-premises, in a datacenter, or even on other clouds. These types of publishers are referred to as Custom Topics. If they can post an HTTP request to the Event Grid service, then they’re candidates for sending events.
Azure Event Grid is agnostic to any language or platform. While it integrates natively with Azure services, it can just as easily be leveraged by anything that supports the HTTP protocol, which makes it a very clever and innovative service.
Event handlers include several services on Azure, as well. These showcase some of the emerging serverless technologies on Azure, such as Functions and Logic Apps. In addition to Azure Automa- tion, another type of event handler could be any HTTP callback, also referred to as a WebHook. Handlers are registered with Event Grid by creating an event subscription. If the event handler end- point is publicly accessible and encrypted by Transport Layer Security, then messages can be pushed to it from Event Grid.
Unlike many other Azure services, there’s no Event Grid name- space that needs to be provisioned or managed. Topics for native
Human Resources
Payroll
Finances
Figure 1 Services That Contain Logic About Other Services
For this design to work, each service must contain some basic logic about the others to communicate. These dependencies cre- ate challenges, not only in terms of scale, but also due to the fact that this logic is scattered across the architecture. Over time, as these types of solutions expand, they become difficult to main- tain and increasingly brittle as more changes and dependencies are introduced.
As an alternative, the concept behind an event-driven design removes these dependencies by promoting the idea of an event as something that’s a first-class citizen in the architecture. This important consideration allows many other systems the ability to leverage a centralized service without the burden of dependencies and logic dispersed throughout the application. Figure 2 highlights the reversal of dependencies for the HR department solution by introducing this principal concept.
This key service is what the rest of the article is all about. I’ll be exploring Azure Event Grid and how it can be used to support the next generation of solutions.
At its core, Event Grid is an event routing service that manages the routing and delivery of events from numerous sources and subscribers.
Introducing Azure Event Grid
Azure Event Grid is a new, fully managed service that supports the routing of events by utilizing a publisher-subscriber model. At its core, Event Grid is an event routing service that manages the routing and delivery of events from numerous sources and subscribers. Figure 3, taken from the Event Grid overview doc- umentation (bit.ly/2qhaj9q), illustrates several of the publishers and handlers that can be used with Event Grid today.
An event is created by a publisher such as a Blob Storage account, Event Hubs or even an Azure subscription. As events
msdnmagazine.com
Human Resources
Procurement
Event Service
Finances
Payroll
Figure 2 A Centralized Service That Reverses Dependencies Between the Other Services
February 2018 21


































































































   23   24   25   26   27