事件驱动架构离我们还有多远?

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 作为阿里云官方的事件中枢产品,EventBridge 的核心能力将聚集于连接和集成。未来 EventBridge 会扩大场景范围,业务应用部署在线下 IDC 机房、跨云厂商、边缘公网环境,阿里云 EventBridge 都将实现连接的触达。

作者 | 尘央


近年来,随着云原生、Serverless 等技术关键词都成为了 buzz word,事件驱动再一次成为了云应用架构领域的热门词汇。Gartner 报告将 Event-Driven Model 列为10大战略技术趋势之一,事件驱动架构(EDA)将成为未来微服务的主流。该报告同时做出了以下预言:


  • 到 2022 年,事件通知的软件模型将成为超过 60% 的新型数字化商业的解决方案;
  • 到 2022 年,超过 50% 的商业组织将参与到事件驱动的数字化商业服务的生态系统当中。


美好的未来,骨感的现实


然而,抛开美好的畅想,在实际工作中,落地事件驱动架构不是一件简单的事情,其问题主要体现在以下方面:


  • 事件无标准,获取困难:阿里云的云产品,从 IaaS 到 PaaS,每天都有数以亿计的事件产生,但这些云产品没有采用统一的标准和规范来定义描述这些事件,使得用户无法使用同样的方式来获取处理事件。

  • 事件孤岛严重,无法串联应用:云产品的事件天然孤立,因为缺少统一的事件中枢,使得用户做应用处理时很难将多个产品的事件做串联组合,无法形成规模效应,很难挖掘出有用的业务价值。


  • 事件响应能力弱:当前大多数云产品事件的处理场景都停留在事件本身的监控、告警展示层面,属于离线分析的场景,而云上的用户更加需要将这些事件连接到自身的在线业务系统中,实现事件的在线响应处理,以发挥更大的价值。


  • 事件管理能力差:当前大部分云产品的事件管理能力处于初级阶段,缺乏对事件生命周期的全程管理,缺少事件长期归档、查找、轨迹诊断等能力,用户使用过程中定位问题较为困难。



EventBridge 事件总线基本模型


为了解决这些现实问题,2020年11月,阿里云发布了 EventBridge 事件总线。作为一款无服务器事件总线服务,EventBridge 作为云事件的枢纽,以标准化的 CloudEvents 1.0 协议连接云产品和云应用,提供中心化的事件治理和驱动能力,帮助用户轻松构建松耦合、分布式的事件驱动架构。


另外,在阿里云之外的云市场上有海量垂直领域的 SaaS 服务,EventBridge 将以跨产品、跨组织以及跨云的集成与被集成能力,助力客户打造一个完整的、事件驱动的、高效可控的上云新界面,阿里云EventBridge可以提供以下核心能力:


(1)海量阿里云官方事件源:EventBridge 当前支持了阿里云 60+云产品的官方事件接入,用户零成本即可获取各类资源、运维和审计事件。


(2)多类型自定义事件源:EventBridge 支持用户以 CloudEvent1.0 标准协议上传自定义的事件内容,同时还支持消息、数据库变更等类型的数据源清洗成自定义事件。


(3)丰富的事件目标和处理模式:EventBridge 支持短信、邮箱、钉钉、API 等 10+事件目标,并支持全量部分提取、常量、模板等 10+事件处理模式,用户无需任何代码即可完成事件驱动和处理。


(4)完善的事件管理和触达能力:EventBridge 支持事件生命周期查询、轨迹追踪等诊断能力,支持跨网络、跨账号、跨地域的复杂事件触达能力。


EventBridge 产品包含几个基本概念:事件、事件总线、事件源、事件规则以及事件目标。


12.png


如上图所示,事件由阿里云官方、自定义、第三方 SaaS 这三类事件源产生并传输到事件总线,用户在事件总线内配置事件规则以实现事件过滤、转换处理,并最终投递到用户指定的事件目标。


1.典型场景


根据 EventBridge 当前已经具备的能力,给大家介绍下三个典型的案例:


场景 1:云原生海量媒体处理业务


在线教育、游戏直播行业,伴随着在线课堂、直播间的产生,会有大量的媒体数据,例如视频、音频文件需要做剪辑、切分、转码等复杂处理。这类业务处理量往往存在较为陡峭的波峰波谷,业务上需要实时的事件驱动协调以及 Serverless 化的执行处理能力,以满足高实时、低成本、极致弹性的业务需求。


1624953046329-a91ffd5e-6516-4542-a27f-cab0a1dd172a.png


在这个业务场景中,EventBridge 收集来自原始文件的上传、变更事件,并根据业务逻辑驱动下游的函数计算做高并发、可弹性的媒体处理逻辑,在函数计算产品处理完成后将结果驱动下游的媒体通道,同时处理结果可以通过 EventBridge 触达到钉钉、短信邮箱等离线通知渠道以及 API、消息队列等在线渠道。使用 EventBridge+函数计算的方案弹性扩容能开强,运维成本更低、实时性更强。


场景 2:360 度业务全景


随着企业业务规模的扩大,业务的稳定性愈发重要,为了避免故障随着场景的复杂化而频繁发生,对应用建设 360  度全方位的可观测和监控体系尤为重要。传统的应用基于云原生重构后,享受云原生技术红利的同时也为应用的稳定性治理带来了更多的复杂性,最主要的就是变更难以控制:业务依赖了整套云的基础设施,IaaS 层物理资源、网络资源以及 PaaS 层云服务,甚至依赖的上下游服务,时刻都在进行变更,用户很难立马感知到变更的发生以及相应的影响,而 95% 的故障都是由变更导致的。


为了解决这个问题,通过 EventBridge 打造 360 度业务全景图,清晰地感知整个产品业务链路上,做了哪些变更,有哪些异常反应,这些异常反应是不是跟最近的变更有关联,遇到特殊问题时,我们甚至可以通过自运维的方式,帮助产品更快的恢复,将影响面降低到最小。


14.png


而这些能力的拥有,离不开 EventBridge 集成多个云产品事件的能力,也离不开 EventBridge 可以通过事件触发多个云产品响应的能力。事件作为一个信息的重要载体,通过 EventBridge 优雅的协调各个云产品进行有序工作。


场景 3:新零售智慧家具门店


EventBridge 未来可以触达的场景有多大?让我们看一个新零售智慧家具门店的场景:


  • 仓库的家具商品入库事件、门店的顾客进店事件通过 EventBridge 实时流转到在线分析系统,让我们知道现在店内有哪些家具商品,进店顾客的家具偏好是什么,并推送给商场门店的导购员或则广告屏,帮助门店更好的下单转化;


  • 顾客在线电子支付后,订单信息发送到 EventBridge,并触发第三方物流公司进行送货上门;


  • 第三方物流公司,可以实时的将家具的位置信息通过 EventBridge 推送给移动端APP,客户可以通过 APP 很方便的实时了解到自己的家具到哪了,预估还需要多久送到家;


所有这些通过EventBridge流转的在线业务事件数据,最终通过EventBridge流转到离线分析系统,自动生成业务报表,供管理层做绩效考核或则运营决策。


1624953046315-8d2c3f14-8ecb-4d6a-b1a1-c0f91bc4b155.png


在这个场景中,EventBridge 起着关键的通道作用,无论是 IoT、在线业务、还是大数据场景,EventBridge 将事件信息高效的流转,推动业务目标达成。Event 既作为在线业务数据,又作为离线分析数据,这种方式,既降低了成本,同时也提高了效率。


发布半年,what's new


EventBridge 距离上次发布已有半年,近一段时间在生态集成规模、事件触达能力、事件应用集成方面有了全面的发展和增强。


  • 在生态集成规模方面,基于阿里云审计产品实现了 30+ 云产品官方事件源接入,涵盖计算、存储、网络、数据库等主流云产品。
  • 在事件触达能力全面新增跨网络、跨地域、跨账号等深度事件触达能力,支持大企业客户使用资源账号做集中事件管理,管理其他成员账号、其他地域的事件。
  • 在事件处理方案:新增了事件查询和事件轨迹查询能力,方便用户快速定位事件驱动链路的异常问题。

未来展望


作为阿里云官方的事件中枢产品,EventBridge 的核心能力将聚集于连接和集成。在连接场景上,未来 EventBridge 会扩大场景范围,不局限于阿里云网络环境,业务应用部署在线下 IDC 机房、跨云厂商、边缘公网环境,阿里云 EventBridge 都将实现连接的触达。


在集成场景上,EventBridge 会继续扩大事件源和目标的范围,涵盖更多的云产品、自定义数据源以及三方 SaaS,同时为了降低用户事件集成的开发复杂度,EventBridge 将会根据各种应用场景构建事件应用模板,用户只需简单配置即可低成本集成。



如果对事件驱动架构和阿里云 EventBridge 产品有兴趣,欢迎加入钉钉群和我们交流。可搜索群号31481771, 加入 EventBridge 用户交流群


1624953046523-447ffdb0-4426-462f-b2b2-d2d9605cecb6.png

相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
2月前
|
机器学习/深度学习 人工智能 监控
事件驱动架构在云时代的再度流行
事件驱动架构在云时代的再度流行
40 10
|
2月前
|
人工智能 大数据 数据处理
事件驱动架构在云时代的优势
事件驱动架构在云时代的优势
35 1
|
2月前
|
监控 数据处理
事件驱动架构的优势
事件驱动架构的优势
|
2月前
|
微服务
事件驱动架构在云时代为什么会再次流行呢?
【5月更文挑战第2天】关于 事件驱动架构在云时代为什么会再次流行呢?
|
6天前
|
消息中间件 传感器 Cloud Native
事件驱动作为分布式异步服务架构
【6月更文挑战第25天】本文介绍事件驱动架构(EDA)是异步分布式设计的关键模式,适用于高扩展性需求。EDA提升服务韧性,支持CQRS、数据通知、开放式接口和事件流处理。然而,其脆弱性包括组件控制、数据交换、逻辑关系复杂性、潜在死循环和高并发挑战。EDA在云原生环境,如Serverless,中尤其适用。
31 2
事件驱动作为分布式异步服务架构
|
17天前
|
存储 数据处理 数据库
理解在服务架构中的事件驱动
【6月更文挑战第14天】网络架构和软件设计常基于ISO七层模型和三层应用架构,强调数据处理的重要性。事件驱动架构(EDA)以事件为中心,改变传统设计方式,解决系统问题。事件是触发通知或状态变化的操作,如用户下单。EDA适用于微服务通信、工作流程自动化、SaaS集成和基础设施自动化等场景,提高系统敏捷性和可扩展性。然而,EDA并非万能,需根据需求选择合适的设计方案。
70 1
理解在服务架构中的事件驱动
|
2天前
|
消息中间件 Java Kafka
探索Java中的事件驱动架构(EDA)
探索Java中的事件驱动架构(EDA)
|
2月前
|
弹性计算 Cloud Native 大数据
事件驱动架构:云时代的流行趋势
在全行业数字化转型的时代,事件驱动架构再次成为热门话题,引起了技术圈广泛的关注和讨论,事件驱动架构正在迅速扩大应用范围,并成为 Gartner 年度十大技术趋势之一。根据预测,越来越多的新型数字化商业解决方案选择采用EDA架构,预计将有60%的解决方案采纳该架构。作为一个经典的架构模式,事件驱动在云时代为何再次流行起来成为焦点呢?本文就来简单分享一下其中的原因,解析事件驱动架构在云时代的重要性和优势。
113 2
事件驱动架构:云时代的流行趋势
|
2月前
|
消息中间件 监控 Cloud Native
【阿里云云原生专栏】事件驱动架构在阿里云云原生生态中的角色与实施路径
【5月更文挑战第23天】本文探讨了事件驱动架构在阿里云云原生生态中的关键作用,强调其在微服务协同和应用创新中的效率提升。阿里云提供了EventBridge和EventMesh等服务支持EDA,其中EventBridge作为事件中枢,实现跨平台事件传递,而EventMesh提供高性能事件处理。通过事件模型设计、服务集成、开发处理器和监控优化四个步骤,用户可在阿里云上实施事件驱动架构,构建敏捷响应的云原生应用。随着云原生技术发展,EDA将成为企业数字化转型的重要推动力。
62 0
|
2月前
|
消息中间件 传感器 运维
软件体系结构 - 架构风格(7)事件驱动架构风格
【4月更文挑战第21天】软件体系结构 - 架构风格(7)事件驱动架构风格
124 0