EventBridge 与 FC 一站式深度集成解析

简介: 本篇文章通过对 EventBridge 与 FC 一站式深度集成解析和集成场景的介绍,旨在帮助大家更好的了解面对丰富的事件时,如何使用 EventBridge 与 FC 的一站式集成方案,快速基于事件驱动(EDA)架构建云上业务系统。

作者:史明伟(世如)


前言:事件总线 EventBridge 产品和 FC (Serverless 函数计算) 产品全面深度集成,意味着函数计算和阿里云生态各产品及业务 SaaS 系统有了统一标准的接入方式;依托 EventBridge 统一标准的事件源接入能力,结合 Serverless 函数计算高效敏捷的开发特点,能够帮助客户基于丰富的事件,结合 EDA 架构快速构建云上业务系统。为了帮助大家更好的理解,今天的介绍主要分为三部分:为什么需要一站式深度集成、FC 和 EventBridge 产品集成功能演示及场景介绍、EventBridge 和函数计算深度集成下一阶段规划。


为什么需要一站式深度集成?


首先让我们一起来看看什么是 EventBridge,什么是函数计算?


什么是 EventBridge?


阿里云事件总线(EventBridge)是一种无服务器事件总线,支持将用户的应用程序、第三方软件即服务 (SaaS)数据和阿里云服务的数据通过事件的方式轻松的连接到一起,这里汇聚了来自云产品及 SaaS 服务的丰富事件;


640 (77).png


从整个架构来看,EventBridge 通过事件总线,事件规则将事件源和事件目标进行连接。首先,让我们快速普及下 EventBridge 架构中涉及的几个核心概念:


  • 事件:状态变化的记录;
  • 事件源:事件的来源,事件的产生者,产生事件的系统和服务, 事件源生产事件并将其发布到事件总线;
  • 事件总线:负责接收来自事件源的事件;EventBridge支持两种类型的事件总线:
  • 云服务专用事件总线:无需创建且不可修改的内置事件总线,用于接收您的阿里云官方事件源的事件。
  • 自定义事件总线:标准存储态总线,用于接收自定义应用或存量消息数据的事件,一般事件驱动可选该总线。
  • 事件规则:用于过滤,转化事件,帮助更好的投递事件;
  • 事件目标:事件的消费者,负责具体事件的处理。


通过上面的流程,完成了事件的产生,事件的投递,事件的处理整个过程。当然事件并不是一个新的概念,事件驱动架构也不是一个新的概念,事件在我们的系统中无处不在,事件驱动架构同样伴随着整个计算机的架构演进,不断地被讨论。对于 EventBridge,采用云原生事件标准 CloudEvents 来描述事件;带来事件的标准化,这样的标准化和事件标准的开放性带来一个最显著的优势:接入的标准化,无论是对于事件源还是事件目标。


640 (78).png


什么是函数计算(FC)?


函数计算是事件驱动的全托管计算服务。使用函数计算,您无需采购与管理服务器等基础设施,只需编写并上传代码。函数计算为您准备好计算资源,弹性地、可靠地运行任务,并提供日志查询、性能监控和报警等功能。


640 (79).png


通过上面的描述,总结起来大家只需要记住几点:

  • 简单易用:快速上线,极大提升业务研发效率;
  • 无服务器运维:节省运维投入;
  • 按需付费:沉稳应对突发流量场景;
  • 事件驱动:云产品互通,快速联动。


为什么函数计算需要 EventBridge?


函数计算以其轻量,快捷,能够利用事件驱动的方式与其他云产品进行联动的特点, 成为很多客户利用事件驱动架构构建业务系统的首选,随着业务及客户需求的不断增加,客户对于函数计算和更多云产品及服务的连接需求变得越来越多,同时对于其他云产品的客户而言, 也希望能够利用Serverless函数计算的特点帮助处理一些系统任务和事件。
image.gif

640 (80).png

1)事件源多样性挑战


事件驱动作为函数计算产品核心竞争力,打通函数计算和其它云产品,以及用户自定义应用,SaaS 服务的连通成为函数计算生态集成的迫切需求,但系统集成,生态建设从来都不是一件容易的事情。函数计算系统在和 EventBridge 集成之前,已经和 OSS,SLS 等用户典型场景的云产品进行了集成,也和阿里云的其它大概十多款产品进行了集成,不同系统具有不同的事件格式,不同系统的注册通知机制也各不相同,以及上游不同系统的失败处理机制也各不相同;部分系统支持同步的调用方式,部分系统支持异步的调用方式,调用方式的差异主要取决于上游系统在接入函数计算的时候当时面临的产品业务场景,对于新的产品能力和业务场景的扩展支持,在当时并未有太多的考虑。随着和更多云产品的集成,集成的投入,集成的困难度和底层数据管理难度越来越大。面对多种事件源集成的客观困难,函数计算希望提高和其他云产品的集成效率。


2)授权复杂及安全隐患


除此之外, 函数计算希望提升用户体验,保证用户关心事件的处理;同时希望能够在面对大量的云产品时保证系统授权层面的复杂度。用户在使用事件触发的时候, 需要了解不同产品接入函数计算的权限要求, 对于客户使用函数计算带来了非常大的困难,为了加速产品接入,大量用户经常使用 FullAcees 权限,造成较大产品安全隐患。

3)通用能力难以沉淀


面对上游不同的事件源, 如何更好的投递事件、更好的消费事件?如何进行事件的错误处理?函数计算调用方式如何选择?以及函数计算后端错误 Backpressure 能力的反馈、重试策略和上游系统参数设置、触发器数量的限制等问题成为函数计算事件触发不得不面对的问题。为了更好的服务客户,提供可靠的消费处理能力,函数计算希望能够有一个统一的接入层,基于统一的接入层进行消费能力和流控能力的建设。通过沉淀在这样一个标准的层面,在保证调用灵活性的同时,提供可靠的服务质量。


为什么 EventBridge 同样需要函数计算?


EventBridge 作为标准的事件中心,目的是希望能够帮助客户把这些事件利用起来,能够通过事件将产品的能力进行联动,为了达成这样的目的,势必需要帮助客户通过更便捷的路径来快速消费处理这些事件。EventBridge 和函数计算的深度集成正是为了这样的共同目标 —— 帮助客户快速的构建基于 EDA 架构的业务系统,促进业务获得成功。


640 (81).png


FC 和 EventBridge 产品集成功能演示及场景介绍


EventBridge 具体支持的事件类型, 基本上包括了阿里云所有的官方产品。可以通过 EventBridge 官方主页查看目前支持的阿里云官方产品事件源类型 。


640 (82).png


EventBridge 触发器及异步集成

点击下方链接跳转查看:

https://www.bilibili.com/video/BV1NY4y1e7fE/


函数计算异步链路支持将处理结果直接投递到 MQ 和 EventBridge,用户可以利用 EventBridge 将相关的结果投递到 SAAS 服务;


点击下方链接跳转查看:

https://www.bilibili.com/video/BV1FY411j7yz/

双向集成的变化


1)用户更多的事件触发选择

  1. 函数计算支持 85+阿里云官方事件源;
  2. 函数计算支持整个阿里云消息队列的事件触发,包括 RocketMQ, RabbitMQ,MNS 等;


2)用户更便捷的事件触发体验

  1. EventBridge 和函数计算控制台数据互通,用户无需在函数计算控制台和事件总线控制台来回跳转;
  2. 用户通过触发器详情,快速跳转,利用 EventBridge 事件追踪能力帮助用户快速排查问题;


官方事件源运维场景总结


基于官方事件源的事件驱动场景,大概可以总结抽象成四个场景。


场景一:单账号下某个云产品的运维需求。通常客户希望基于这样的一个事件,包括类似像云服务器事件 ECS,或者容器服务镜像事件,通过这样的事件监听做一些自动化诊断和运维操作。


场景二:实际是在场景一的基础上的一个扩展,针对多个云产品的事件,希望能够进一步分析,做一些故障处理。


场景三:我们观察到,大的一些企业,在使用云产品的时候,实际上是由多个账号去使用阿里云的产品。在多个账号,多个产品的情况下,希望能够对多个账号中的云资源使用情况有一个全局统一的视角进行实践分析,同时进行账号配额的一些调整。那这样的话就是可以利用到 EventBridge 跨账号事件投递的能力,然后再利用函数计算做一个统一处理。


场景四:这个场景实际上是一个账号跨域事件处理场景,EventBridge 目前并没有去提供这样一个跨域的能力,这种情况下,可以借助函数计算提供的 HTTP 函数能力,自动生成 HTTP Endpoint,通过 EventBridge 的 HTTP 事件源,完成事件的跨域消费。


640 (83).png


自定义事件源场景总结


1)MNS 队列自定义事件源触发场景:客户在 OSS 中上传文件之后,根据文件上传事件对 ACK 进行扩容,目前通过 OSS 事件发送到 MNS 中,然后由 MNSQueue 消息通过 EventBridge 触发函数计算, 在函数计算中根据一定的逻辑进行 ECI 资源的创建;同时客户希望通过 MNS 进行通知服务;利用 EventBridge 订阅模式,通过事件规则的定义,让通知服务和函数计算共享同一个事件订阅规则,可以大大的简化用户的方案。


640 (84).png


2)RabbitMQ 队列自定义事件源触发场景:鉴于 RabbitMQ 在稳定性和可靠性方面的表现,在 IOT 场景具有非常普遍的使用,客户通常会选择使用 RabbitMQ 来进行端设备数据采集和存储, 考虑到 IOT 相关的嵌入式设备性能使用环境,通常端设备采集的数据比较偏向底层裸数据,在实际业务层面,客户需要找到一种快速高效的途径对 RabbitMQ 中的数据进行加工,通过 EventBridge 提供的自定义事件总线,利用函数计算对 RabbitMQ 中的数据快速处理, 实现 ETL 目的。

640 (85).png


EventBridge 和函数计算深度集成下一阶段规划



事件过滤高级 ETL 处理


将函数计算和 EventBridge 进行更紧密的集成,由函数计算提供一些高级的 ETL 能力,提升整个事件过滤转换的能力。


640 (86).png



提供更丰富的事件目标


目前 EventBridge 整个下游的事件目标相对来说较少,我们希望能够通过函数计算和 EventBridge 的一个密切集成,利用函数计算敏捷的开发能力,分别通过大账号模式和用户自持的这样一个能力,构建一些更丰富的 EventBridge 下游事件目标,帮助丰富整个事件目标的生态。


640 (87).png


总结


本篇文章通过对 EventBridge 与 FC 一站式深度集成解析和集成场景的介绍,旨在帮助大家更好的了解面对丰富的事件时,如何使用 EventBridge 与 FC 的一站式集成方案,快速基于事件驱动(EDA)架构建云上业务系统。

相关文章
|
1月前
|
Java Maven
Javaweb之 IDEA集成Maven的详细解析(2)
3、填写模块名称,坐标信息,点击finish,创建完成
112 4
|
6天前
|
弹性计算 Serverless 应用服务中间件
Serverless 应用引擎操作报错合集之集成sls时出现报错,是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
1月前
|
Java Maven
Javaweb之 IDEA集成Maven的详细解析(1)
03. IDEA集成Maven 我们要想在IDEA中使用Maven进行项目构建,就需要在IDEA中集成Maven 3.1 配置Maven环境 3.1.1 当前工程设置 1、选择 IDEA中 File => Settings => Build,Execution,Deployment => Build Tools => Maven
166 3
|
1月前
|
SQL API 数据处理
新一代实时数据集成框架 Flink CDC 3.0 —— 核心技术架构解析
本文整理自阿里云开源大数据平台吕宴全关于新一代实时数据集成框架 Flink CDC 3.0 的核心技术架构解析。
894 0
新一代实时数据集成框架 Flink CDC 3.0 —— 核心技术架构解析
|
1月前
|
关系型数据库 Serverless 数据库
基于DTS Serverless构建一站式实时数据集成服务
在企业的数字化转型背景下,企业需要数据中台数据实时集成,提升数据分析的时效性。DTS推出了从数据库将业务数据实时同步到数据仓库的解决方案,帮助客户挖掘商机,调整商业策略。同时,为了解决在客户业务负载多变的情况下灵活稳定支持数据传输的问题,DTS推出了Serverless版本,支持按需自动弹性伸缩链路规格,客户可以按需付费,无需关心底层资源。此外,DTS还提供了数据校验的增值能力,帮助检验数据一致性,以免影响客户业务决策的准确性
50258 1
|
1月前
|
安全 架构师 Java
SpringBoot【集成 jasypt】实现配置信息自定义加解密(自定义的属性探测和密码解析器)
SpringBoot【集成 jasypt】实现配置信息自定义加解密(自定义的属性探测和密码解析器)
247 0
|
7月前
|
Cloud Native Serverless 计算机视觉
Docker与Serverless计算的集成: Docker容器如何与Serverless计算结合。
集成Docker容器和Serverless计算是一种强大的方式,它结合了容器的可移植性和Serverless的自动伸缩性。在本文中,我们将深入探讨如何将这两种技术结合使用,以实现更灵活的应用程序部署方式。
182 0
|
7月前
|
消息中间件 人工智能 Serverless
函数计算FC降价全解析,最高幅度达93%,怎么用才便宜?
今年云栖大会,函数计算3.0全新升级,相对函数计算2.0,3.0版本突出易用性、高弹性,并且可以和更多阿里云服务无缝集成。业内首发神龙 Serverless GPU 架构,冷启动大幅优化,全链路调度延时降低 80%,函数执行性能波动率降低 70%;作为事件驱动的全托管计算服务,足够轻量灵活,让用户以更少的代码,更好、更快地实现业务创新。函数计算 FC 通过大规模的资源池化和调度策略优化实现降本,阶梯定价最高降幅可达 93%。
函数计算FC降价全解析,最高幅度达93%,怎么用才便宜?
|
7月前
|
存储 监控 安全
中项系统集成项目管理2023上半年真题及解析(四)
中项系统集成项目管理2023上半年真题及解析
|
7月前
|
监控 架构师 测试技术
中项系统集成项目管理2023上半年真题及解析(三)
中项系统集成项目管理2023上半年真题及解析

热门文章

最新文章

推荐镜像

更多