EventBridge 事件领域重点特性介绍(一)| 学习笔记

简介: 快速学习 EventBridge事件领域重点特性介绍。

开发者学堂课程【EventBridge 入门课程 :EventBridge 事件领域重点特性介绍(一)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1220/detail/18280


EventBridge 事件领域重点特性介绍

 

内容介绍

一、概括

二、EDA 和 EventBridge 概述

三、Iac 简介

四、演示

 

一、概括

今天给大家介绍 EventBridge 重点特性和如何以 IaC 的方式使用 EventBridge。EventBridge 作为构建 EDA 架构的基础设施,通过一些核心价值和特性提供了很灵活的丰富的事件收集、事件处理和事件路由的能力。

对不少用户来讲,通过控制台使用 EventBridge 是最便捷最快的一种上手方式。然而也有很多用户面临着大量的云产品的管理,使用控制台管理每一个资源就变成了很沉重的手工操作的负担。现在已经能够通过 OPTI,将 EventBridge 能力方便快捷来用,接下来将介绍 EventBridge 和 IaC 的重点概念和特性。也是怎样基于 IaC 的理念部署 EventBridge。

 

二、EDA 和 EventBridge 概述

image.png

首先介绍 EDA 架构,Event-Driven Architecture 即事件驱动架构。事件驱动架构是一种所有和分布式的架构。当收集到某应用产车事件之后,实时的对事件采取处理,然后录入到下游的系统,不需要等待下游事件的响应。使用事件总线 EventBridge 可以构建各种简单的或者是复杂的试验集中架构,通过标准化的高去连接云产品和应用,包括第三方 SaaS 等。

事件驱动架构本身需要具备加三个能力,有事件收集,事件处理,还有事件路由。具备这些能力之后,可以通过事件驱动架构获取以下这些优势包括降低友和降低生产。当生产者和生产者产生事件时,EventBridge 产生事件时,并不需要关注订阅者是谁,只需要关注事件的发生。也不需要关注这个事件应该被怎么处理,怎么录由,任何一个环节出现了问题,也不会影响其他的正常运行。然后异步的执行,这驱动架构非常适合异步商品。当产生了一个事件的高峰期,收集各种来源的事件之后,仍然会保留在这个事件的总线上。然后逐步的分发,传递给下游的消费者。也不会造成系统的拥塞或者资源过剩。另外是可发展性事件驱动架构的路由和 filter 和路由的能力,支持划分服务,并扩展路分发。然后敏捷实现驱动架构已经支持跟阿里云上的各个云产品和应用集成也支持实现路由至任何系统。只要能够对接到 EventBridge 上就可以,就能够提供一个非常便捷的敏捷高效的部署团。那 EventBridge 怎么样去搭建这种加工?阿里云提供了一个无服务器事件现总线服务,主要提供这几个核心的概念,用来满足构建 EDA 架构的需要。

image.png

可以看到图上下半部分从左到右分别是事件源、事件总线和事件目标。在 EventBridge 中事件源主要分为两类。一类是阿里云的官方事件源,来自于各个云产品所产生的事件。另一类是自定义事件源,所有类型的自定义事件源像第三方 SaaS 应用定义的一些事件源。接下来是事件总线,也分为两类。一类是云服务专用总线,它只接受来自阿里云服务产生的事件。其他的是自定义总线,所有类型的自定义事件源投递到自定义事件总线上。在 EventBridge 中事件规则包含两部分。一是事件模式,主要用于过滤事件,将事件路由到自定义目标,包含一个或多个事件目标,所列出来的并不止局限于此。同样是通过规则来描述。包括事件的转换和处理以及最终消费使用哪个 target 来消费这个事件。EventBridge 通过提供简洁的事件匹配语法和灵活的事件转换能力来实现事件规则。后面也会通过演示来展示具体的例子。EventBridge  还提供一些增强能力。这些增强能力使 EDA 加工的事件变得更加透明。事件的追踪可以通过发布到事件总线 EventBridge 的事件内容和处理轨迹,帮助做事件统计的流程诊断。

事件分析是通过提供数据检索对发布到事件总线的各种可视化处理。方便用户发现所有流经 EventBridge 事件的价值。有几个截图展示大概的样子。

image.png

目前事件分析已经部署在了深圳和成都。接下来分析能力很快也会在其他的上线。

 

三、Iac 简介

image.png

IaC 是非常重要的组成部分,将基础设施代码化,可以轻松借助版本便捷地协调多人合作。可以实施非常严格的,借助判断工具,自动触发进行资源部署。开发者只需要付出很少的努力,就可以获得云上服务、资源,极大地缩短部署时间。IaC 代码的实践中一般有两种方式。一个是命令式,另外一个是生命式。

命令式顾名思义发出每个动作的指令,描述 how,比如要创建一台某某规格的 ecs。描述重点是创建的动作。再把需要每一个步动作的顺序去仔细编排,处理各种可能的错误,尤其要注意处理好每次变更对这种已经存在的资源的影响。否则稍有不慎,可能就造成了服务中断。作为开发者可以通过自己熟悉的这种编程语言阿里云 api来管理资源。因为这些 api 本身就是类似于像 create、 describe、delate 这种对某些资源的操作,所以很显然,这就是一种命令式的的事件。另外一种是生命式的。生命式意味着开发者只需要描述自己需求状态,就是描述 what,描述最终的一个状态。比如,描述一台 ECS,那它的描述就不需要说创建这个动作,而是只要说一台某某规格的 ECS 就好了,熟悉 DPS 同学应该对这种概念是比较熟悉的。这个跟 keepS,因为 keepS 的 api 也是采生命式的方式。像 IAC 工具可以通过描述当中资源之间的一些依赖关系,自动编排顺序。如果已经有存在的资源,也会正确去处理,比如不存在的时候,就创建,存在就对比期望状态跟实际的状态,这两者的差异,然后根据这种差异做出更新。可以看出来这种方式对开发者非常友好,极大地降低了开发新质负担。综合来讲的 IaC 带来的优势有这几种。分三类优势,第一个是降低成本,一是有效的管理资源,使得资源持有成本能够得到有效的控制。然后再就是减少了为控制管理资源而付出的人力的成本,这也是一块不小的成本。然后是效率提升。整体上会采用 IaC 之后会加快资源的交付和软件部署的速度,这就意味着整体的开发效率的提升。然后第三个也是很关键的一点,是风险控制。因为通过 IaC 刚才也讲到了可以利用控制工具来做一些事件的 review。还包括一些自动化工具来做多个环境的提高技术架构一致性的操作。减少了错误,提高了一致性,并且能够消除不同环境之间配置的偏差,或者期望状态与实际状态之间配置的偏差。就有效的控制了线基础设施的一些风险。然后这里是主要以 telphone 来举例。telphone作为一个IC 领域的佼佼者,提供了比较强大的自动化的管理基础设施能力,生态很丰富,几乎所有的云厂商都提供了官方的插件。阿里云也提供了自己的官方插件,而且阿里云的大多数产品包括 EventBridge 也对 telphone 做了很全面的支持。使得跨多云部署基础设施变的极其简单。然后既然是 IC,telphone还是提供了自己的一个配置语言叫 HCL。HCL 具有一个类似 jason 的这种简单的语法。但是很类似的很简单直观的一种语法,也是通过生命式的一种资源描述,能让开发者快速上手。

相关文章
|
4月前
|
运维 Serverless API
Serverless 应用引擎产品使用合集之在创建或修改熔断规则时,没看到地方可以选行,是什么原因
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
5月前
|
XML 中间件 数据库
基于jeecgboot的flowable流程支持定时边界事件
基于jeecgboot的flowable流程支持定时边界事件
88 0
|
12月前
|
设计模式 Go
Go语言事件系统设计解析:发布-订阅模式实战
Go语言事件系统设计解析:发布-订阅模式实战
414 0
|
5月前
|
存储 SQL Serverless
Serverless 应用引擎常见问题之应用下的【应用事件】以及企业级特性下的【事件中心】没有日志如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
105 0
|
5月前
|
Java 数据处理 Apache
流计算中的窗口操作是什么?请解释其作用和使用场景。
流计算中的窗口操作是什么?请解释其作用和使用场景。
54 0
|
新零售 敏捷开发 Cloud Native
“全”事件触发:阿里云函数计算与事件总线产品完成全面深度集成
目前,函数计算已具备接入EventBridge所有事件源的触发能力,实现触达阿里云全系产品服务的“最后一公里”。
294 0
“全”事件触发:阿里云函数计算与事件总线产品完成全面深度集成
|
JSON 监控 机器人
EventBridge 事件领域重点特性介绍(二)| 学习笔记
快速学习 EventBridge事件领域重点特性介绍。
172 0
EventBridge 事件领域重点特性介绍(二)| 学习笔记
|
新零售 数据可视化 中间件
EventBridge 事件总线及 EDA 架构解析(三)| 学习笔记
快速学习 EventBridge 事件总线及 EDA 架构解析。
188 0
EventBridge 事件总线及 EDA 架构解析(三)| 学习笔记
|
XML 缓存 前端开发
EventBridge 事件总线及 EDA 架构解析(一)| 学习笔记
快速学习 EventBridge 事件总线及 EDA 架构解析。
433 0
EventBridge 事件总线及 EDA 架构解析(一)| 学习笔记
|
存储 运维 数据可视化
EventBridge 事件总线及 EDA 架构解析(二)| 学习笔记
快速学习 EventBridge 事件总线及 EDA 架构解析。
211 0
EventBridge 事件总线及 EDA 架构解析(二)| 学习笔记
下一篇
无影云桌面