Q&A

Microsoft Cloud Dev Advocate Laurent Bugnion Talks Event-Driven Applications in Azure

Event-driven architectures are said to provide many benefits such as real-time processing, cost reduction, easier scalability and improved customer experiences.

Microsoft says moving to an event-driven architecture requires a restructuring of how you think about your application.

"To adopt an event-first mindset, you should first consider what business processes could be optimized to deliver customer value," says a post on the company's Community Hub. "These business processes can then be distilled down to a workflow of events."

The company notes that while event-driven architecture is not a new paradigm, it has become popular for its real-time ability to ingest, process and react to events stemming from many different kinds of user- or machine-generated events, explaining that the proliferation of microservices and serverless computing has led to the architecture's ability to fully realize the benefit of its loosely coupled design to reach infinite scale without the need to manage infrastructure.

Event-Driven Architecture
[Click on image for larger view.] Event-Driven Architecture (source: Microsoft).

So how do you get started with it?

You delve into the nitty-gritty details of building event-driven web applications using Azure Functions and the Azure SignalR service. And, for real-world relevance, you use a production application called Timekeeper that Microsoft uses to run some of its live TV shows such as the Hello World daily show.

And who better to lead you through the step-by-step process than Laurent Bugnion, a cloud developer advocate at Microsoft.

He will do just that in an upcoming VSLive! event being held in Las Vegas March 19-24. In a March 21 intermediate-level presentation titled Event-driven Applications in Azure, Bugnion will use Timekeeper to teach devs:

  • How to use SignalR to create event-driven web applications with Web sockets
  • How to deploy and configure a Static Web App on Azure
  • How these technologies are used at Microsoft in a production setting

We caught up with Bugnion to learn more.

VisualStudioMagazine: How do Azure Functions and Azure SignalR work together in event-driven web applications?
Bugnion: Azure SignalR is available as a serverless, standalone service in Azure. This allows us to create a web-socket communication hub without having to run a web server on Azure or otherwise. Thanks to this, we can create an Azure Functions application to server as the gateway to the SignalR service, and have a completely serverless web sockets system running. For the front end, we can develop a static web application, a SPA (single page application) or other serverless applications to serve as the front end for the system.

How do web sockets fit into things?
Web sockets are the technology used by SignalR to send messages from a server to a client. Web sockets are fast and can handle very large numbers of messages per second. This allows SignalR powered applications to respond very fast to large-scale changes in the system observed.

What has been the most interesting development lately in Microsoft's event-driven web app space?
Event-driven is a fantastic way to run applications without having to constantly poll a server.

"Learning about event-based services changes the way that web applications are built, and is an important part of how the modern web works."

Laurent Bugnion, Principal Cloud Advocate for Microsoft Azure

Microsoft Azure offers many event-based services, such as Azure SignalR service for web-sockets based communication, Azure Service Bus for scheduling and massively scaling delivery of messages between services, the Notification Hub allowing the developer to send notifications to mobile devices, and more. Learning about event-based services changes the way that web applications are built, and is an important part of how the modern web works.

How has Microsoft eased the deployment and configuration of Static Web Apps on Azure?
Static web apps are probably my favorite service on Azure at the moment. Deploying changes to a Static Web App is extremely easy because a GitHub action is automatically created and configured to build and deploy changes from GitHub to Azure (other source control systems are also supported). Even better, when a Pull Request is created, a staging environment is automatically created in Azure Static web apps so changes can be tested without impacting the production system.

Inside the Session

What: Event-driven Applications in Azure

When: March 21, 8:00am - 9:15 am

Who: Laurent Bugnion, Principal Cloud Advocate for Microsoft Azure

Why: Learning about event-based services changes the way that web applications are built, and is an important part of how the modern web works.

Find out more about VSLive!, taking place March 19-24 in Las Vegas

How does Microsoft's internal Timekeeper application leverage all of the new tooling, that is, why is it a good example for developers to check out?
Timekeeper is an application using the aforementioned technologies (Azure SignalR service, web sockets, Azure Functions, Static Web App). The application uses web sockets to synchronize clocks (start, stop, pause, advance) between a host and multiple guests. This technology allows us to use a Blazor-based web interface running on any client (mobile phone, laptops, desktops and so on). The system is fast, responsive and easy to maintain and deploy. It also runs at very low costs. The code is open source and available (as well as a fully functional public version of the system) at https://timekeeper.cloud.

Bugnion also noted that in addition to this session, "I will have the pleasure to talk about Durable Azure Functions, another exciting serverless technology allowing you to create, run and manage workflows in code. Durable functions allow the developer to bypass some of the limitations of "classic" Azure functions, such as the timeout. Next to this, I will also give our audience tips and tricks for debugging applications in Visual Studio and in Azure. We will talk about monitoring, Application Insights, debugging in production and more. Can't wait to see everyone!"

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Mastering Blazor Authentication and Authorization

    At the Visual Studio Live! @ Microsoft HQ developer conference set for August, Rockford Lhotka will explain the ins and outs of authentication across Blazor Server, WebAssembly, and .NET MAUI Hybrid apps, and show how to use identity and claims to customize application behavior through fine-grained authorization.

  • Linear Support Vector Regression from Scratch Using C# with Evolutionary Training

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the linear support vector regression (linear SVR) technique, where the goal is to predict a single numeric value. A linear SVR model uses an unusual error/loss function and cannot be trained using standard simple techniques, and so evolutionary optimization training is used.

  • Low-Code Report Says AI Will Enhance, Not Replace DIY Dev Tools

    Along with replacing software developers and possibly killing humanity, advanced AI is seen by many as a death knell for the do-it-yourself, low-code/no-code tooling industry, but a new report belies that notion.

  • Vibe Coding with Latest Visual Studio Preview

    Microsoft's latest Visual Studio preview facilitates "vibe coding," where developers mainly use GitHub Copilot AI to do all the programming in accordance with spoken or typed instructions.

  • Steve Sanderson Previews AI App Dev: Small Models, Agents and a Blazor Voice Assistant

    Blazor creator Steve Sanderson presented a keynote at the recent NDC London 2025 conference where he previewed the future of .NET application development with smaller AI models and autonomous agents, along with showcasing a new Blazor voice assistant project demonstrating cutting-edge functionality.

Subscribe on YouTube