Skip to Content
微软认证Azure开发工程师(AZ-204)考试指南
book

微软认证Azure开发工程师(AZ-204)考试指南

by Adora Nwodo
August 2025
Beginner to intermediate
360 pages
5h
Chinese
O'Reilly Media, Inc.
Content preview from 微软认证Azure开发工程师(AZ-204)考试指南

第 9 章 使用 Azure 的事件驱动架构 使用 Azure 的事件驱动架构

本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com

我们在构建分布式系统时,这些不同的系统或节点需要相互交互或发送消息的方式。其中一些消息可以归类为事件。事件驱动架构越来越受欢迎,因为它允许系统实时响应事件,使系统更高效、反应迅速。

在本章中,您将了解 Azure 上的事件驱动架构,以及它们如何帮助您构建现代、反应灵敏的应用程序。我们将探讨事件驱动系统的关键组件,如事件生产者、事件消费者和事件代理,以及如何使用 Azure 服务(如事件网格、事件集线器和服务总线)来实现这些组件。您将看到这些服务如何让您处理各种场景,从简单的事件通知系统到复杂的高吞吐量数据流应用程序。

我们还将了解在 Azure 上使用事件驱动架构的好处,如提高可扩展性、更好的资源利用率以及从容应对不同负载的能力。本章结束时,你将对如何使用 Azure 的强大工具和服务设计和实施事件驱动系统有一个扎实的了解,从而能够构建既稳健又能应对环境变化的解决方案。

了解事件驱动架构

下订单、加入群聊或发起交易是分布式系统中不同类型的事件。 计算机之间的持续通信创建了一个交互网络,在这个网络中,事件发挥着至关重要的作用。在分布式系统中,事件本质上是一个信号,表明发生了值得注意的事情,从而触发响应或一系列操作。事件是这些系统的生命线,它使通常分布在多个服务器甚至地理位置上的不同组件能够无缝互动和协同工作,而无需紧密相连。

分布式系统中的事件通常包含发生了什么、在哪里发生的信息,以及任何需要处理的相关数据。它们使系统具有反应能力,即能够实时响应变化和操作。这种事件驱动方法有助于保持系统组件的松散耦合。每个组件只需根据接收到的事件完成自己的工作,而无需全面了解系统的其他部分。这种设计使系统更加灵活、可扩展性和可维护性,并能快速适应新的需求或变化。

例如,在分布式电子商务平台中,像OrderPlaced 这样的事件可能会在不同的服务中触发多个动作。当客户下订单时,该事件就会生成并发送到事件代理,事件代理会将其转发给不同的订阅者。支付服务接收该事件以处理交易,库存服务更新库存水平,运输服务开始处理交付,通知服务向客户发送确认电子邮件。如图 9-1 所示,每个服务都独立运行,但通过它们消耗的事件进行协调,从而使平台作为一个有凝聚力的单元运行。

图 9-1. 事件是如何触发的

这种事件驱动方法非常强大,因为它可以在不中断整个系统的情况下添加新功能或修改现有功能。例如,如果电子商务平台决定添加一个新的推荐引擎,在购买后推荐相关产品,那么新服务只需订阅OrderPlaced 事件即可。这项新服务可以立即开始运行,而无需对现有的支付、库存或通知服务进行任何更改。这种灵活性和适应性使事件驱动架构特别适合分布式系统。

事件驱动系统的关键组件

在事件驱动架构中,系统的不同部分会在事件发生时对事件做出反应,从而使一切都能实时协同工作。要使这种系统正常运行,需要三个主要组件:事件生产者、事件消费者和事件经纪人。其中每一个组件都在系统如何处理事件和顺利处理事件方面发挥着重要作用。

事件生产者

事件生产者是在事件驱动系统中生成事件的源。这些生产者可以是各种组件、应用程序或服务,它们检测变化或执行重要操作,足以作为事件广播。生产者不需要知道谁将处理事件;他们只需在发生值得注意的事情(如用户操作、系统状态变化或数据更新)时发出事件即可。这种解耦使事件生产者能够独立于响应这些事件的消费者运行,从而使系统更具模块性和 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

What Successful Brick-and-Mortar Retailers Get Right

What Successful Brick-and-Mortar Retailers Get Right

Rob Angell
A Five-Step Guide to Improving Your Employer Brand

A Five-Step Guide to Improving Your Employer Brand

Kimberly A. Whitler, Richard Mosley
What Successful Project Managers Do

What Successful Project Managers Do

W. Scott Cameron, Jeffrey S. Russell, Edward J. Hoffman, Alexander Laufer

Publisher Resources

ISBN: 9798341666177