事件总线+函数计算构建云上最好的事件驱动架构应用|学习笔记(二)

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
函数计算FC,每月15万CU 3个月
简介: 快速学习事件总线+函数计算构建云上最好的事件驱动架构应用

开发者学堂课程事件总线 EventBridge 生态集成课程事件总线+函数计算构建云上最好的事件驱动架构应用学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1235/detail/18406


事件总线+函数计算构建云上最好的事件驱动架构应用


(4)为什么需要事件总线服务

image.png

第三个问题,为什么如此需要实践总线服务,前面说过,已经通过函数计算和云上的众多的云产品进行了集成深度集成,提供了一些开箱即用的能力,同时也提供了一些触发通道。那么为什么还需要实践总线服务来去构建实践驱动这样一个应用架构,在整个去构建基于函数计算构建事件驱动的这样一个服务的过程中,面临了主要来自三个方面的挑战。

首先是需要去跟众多的这个事件员多样性所导致的这样一个接入困难,去将实践驱动的这样一个生态去更大化的去扩展到包括语音产品客户的客户自己的应用以及云上的一些SARS系统的时候,就会面临这样的一个众多的困难,同时面对不同的这样一个事件源的这个集成诉求,产品之间的授权复杂,非授权复杂度越来越高,针对不同的产品需要提供不同的这样一个授权策略,变得异常困难。最后基于这样一个事件集成的过程中,发现需要去沉淀一些更通用的在实践通道上能够提供一些更通用的能力的时候,发现随着这样一个实践员,不同实践员接入方式不同,这些能力的沉淀变得异常困难。那面对这样的挑战的情况下,急需一款服务或者是这样的一个产品接入的这样一个角色,能够统一的去提供一个事件驱动的这样一个因为它channel的这样一个接入面,帮助去更好的去解决来自这三个层面的挑战。那在这样的背景下,事件区事件总线作为承担这样一个角色的一个云上服务,事件总线跟函数计算的这样一个结合,可以去解决在事件驱动的这样一个生态构建的过程中所面临的这些问题。

下面是事件总线的一个基本架构模型,会看到事件总线的话,也是按照之前的这样一个事件驱动的架构去构建的这样一个通用的框架,包括整个事件源的接入,事件总线以及最终的这样一个下游事件处理引擎,以及它的事件目标。在这样一个架构下,事件总线服务能够更好的去对接不同的实践员,包括阿里云产品用户业务,业务服务以及相关的这样一个SARS事件。客户再去开通了这样一个事件总线服务的时候,那他会接收到整个来自阿里云200多款产品的这样一个产品事件,来帮助去构建这样一个云产品事件驱动架构的这样一个能力。

image.png

那同时除了这个云产品的架构以及下游的这样一个接入的能力之后,那面对一些更复杂的一些事件类型,包括事件流,去提供了这样一个英文的bridge,提供了一个事件流的架构模型,那通过这样一个事件流的架构模型,能够将上游的一些数据面的一些或者业务层面的一些消息,包括下列这些服务中间的数据,能够通过统一的这样一个事件流的这样一个通道,去到下游的这样一个函数计算,去统一去构建一个事件驱动型的这样一个架构服务,提供高性能的事件通道能力,最终再结合函数计算提供的这样一个数据处理引擎的这样一个弹性能力构建,帮助客户去构建更好的这样一个事件驱动型架构。

image.png

在这样的一个事件驱动型事件总线服务的引入,帮助去实现了这样的一个目的,首先去简化统一了事件源的接入,采用事件总线跟相关的实践员,采用开源的实践标准,去对接不同的云产品,解决了产品接入多样性带来的这样一个复杂度,以及面对不同的这个授权的这样一个复杂度,帮助去可以构建更加丰富的事件驱动生态。

image.png

第二个部分的话就是事件总线服务的引入,可以帮助去沉淀更通用的事件通道能力,包括在事件通道上去提供这样一个过滤转换的能力,可以提供事件通道的自定义能力,满足下游函数计算以及不同的这样一个事件目标,对事件处理的这样一个需求可以做一些前置的过滤,剔除掉一些不必要的事件,触发相关的这样一个无效的调用对下游的这样一个就是无效的这样一个资源的浪费。包括针对事件流的这样一个场景,去提供了一些通用的这样一个数据转换,以及基于函数计算的这样一个 remote transform的这样一个能力,同时针对事件流场景下,客户对于成本以及对于处理数据处理的一些聚合的需求,去提供了这样一个简单的一些窗口能力,包括Bachmann,他们这些能力可以更好的去帮助去处理客户的数据沉淀作为这个事件通道的一个通用能力,去服务众多的下游事件事件目标。

image.png

最后事件总线服务的引入,可以帮助去提供更利于产品集成的通用能力的这样一个提供,可以基于函数的这样一个URL,提供API端点端点能力,帮助更好的去以多种这样的一个形态去订阅消费上游的不同的类型的这个事件源的事件,最终构建出一个多态的这样一个事件驱动型架构模型。那在聊完了事件总线的一些引入,能够给事件驱动架构带来的一些基本好处之后,那接下来会去分享一些客户场景案例,去看看的客户是如何去利用事件总线和函数计算,构建自己的这样一个满足客户的这样一个业务诉求。

image.png

 

四、相关案例分享

image.png

首先第一个需求是在一些大的企业客户,通过事件总线以及通过这样一个 action trial的这样一个审计事件的这样一个订阅,通过函数计算去处理这些多个账号的这样一个action trial的这个事件,然后去做一些后续的这样一个审计,相关的一些报警,还有一些通知相关的操作,然后去管理不同的账号,对于资源的这样一个使用和操作的一些相关相关的后续的就是流程性工作,这是的第一个案例。

那第二个案例是的客户通过事件总线和函数计算,然后利用 oss类型的事件,通过去在oss上上传文件,然后根据上传文件的这样一个事件,以及去实现,去通过函数计算订阅相关的oss事件,去做操纵相关的云上资源,做一个资源扩容,这是看到的第二个客户用例。然后将客户操作的一些结果,再通过实践总线提供的下游upstream的通用能力,再去通知到相关的业务方进行一个事件的通知。

image.png

第三个部分的话,也是看到一个比较常见的一个云上的操作,包括云上的一些资源的自动化申请,那看到的客户通过将自己这个描述的一些资源申请的这样一个 get UPS的一些描述,telephone的文件通过上传到oss然后通过oss触发投事件投递到因为它不认证,然后再通过函数计算去订阅这样的一些相关事件,触发去执行telephone的相关的这样一个资源申请。

 

同时在这个执行过程中,用户可能在函数计算里面需要去访问自己的这样一个外部的一些API,然后去帮助自己更好的去打通云上资源跟客户这样一个多架构的多云架构的这样一个架构下的一个资源的协同能力,最后通过这样一个操作,然后也可以通过interpret提供的这些upstream的能力,将这样的一个操作去通知到相关,这是看到的另外一个场景。那基于上面的话主要是客户基于因为它range和函数计算针对语音产品的事件做的一些云产品运维以及审计相关的工作

image.png

另外一个部分的话也是基于客户基于视线流做业务消息的处理,会看到这样一个基本的架构,客户的话会将 produce作为一个微服务去去生产相关的这样一个数据,最终通过interpret的事件流能力去订阅这些消息,利用函数计算这样一个细度的资源能力以及消息的这样一个波峰波谷,这样一个对后端资源的这个弹性的需求模型的这样一个要求,可以结合函数计算去实现消息的一个更好的更快的消费,实现满足他的业务诉求。

那下面是针对在事件流这个场景下看到的几个具体的案例。那首先客户将应用性能数据写入通过先写入卡夫卡这样的一个语音产品,再通过因为它bring事件流的这样一个能力,将相关的这个数据清洗之后写入到oss为客户进一步做大数据处理,去做相关的这样一个前置数据数据清洗。

image.png

同时也可以在相关的一个数据清洗之后,它导入到clickhouse的这样一个服务,进行一个在线的数据分析,这是看到的。另一个客户的话是关于这个事件驱动,场景的这个数据一定要处理。那首先客户将自己的这样一个业务系统生产的这样一个数据书到了这个 APM 里面,再通过因为它range的这样一个时间流的能力去订阅的消息,通过在函数计算中对这些数据进行 et要处理,然后做后续的这样一个相关的操作。

image.png

最后一个场景的话是看到的客户利用事件总线以及函数计算构建的这样一个购物车运营通知的这个事件驱动架构。首先客户在客户会在购物车的这样一个架构架构的行为,以及商品的这样一个价格变动,以及它的一个过期的相关的一个通知的情况下,会去通知它的整个业务服务业务服务,再通过函数计算的这样一个相关的能力去通知他的客户方现在购物车相关的产品的一些变动做一些运营操作,那最后将这样的一个运营操作的结果在进行到输入,后续通过interpret的这样一个通路再去订阅绕开明做后续的这样一个数据的清洗以及入库操作,实现自己的整个购物车的这样一个运营的流程。

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
24天前
|
运维 监控 Serverless
揭秘云计算中的Serverless架构:优势、挑战与实践
揭秘云计算中的Serverless架构:优势、挑战与实践
|
5天前
|
弹性计算 运维 Serverless
卓越效能,极简运维,体验Serverless高可用架构,完成任务可领取转轮日历!
卓越效能,极简运维,体验Serverless高可用架构,完成任务可领取转轮日历!
|
16天前
|
监控 Serverless 云计算
探索Serverless架构:开发实践与优化策略
本文深入探讨了Serverless架构的核心概念、开发实践及优化策略。Serverless让开发者无需管理服务器即可运行代码,具有成本效益、高可扩展性和提升开发效率等优势。文章还详细介绍了函数设计、安全性、监控及性能和成本优化的最佳实践。
|
14天前
|
运维 Serverless 测试技术
通义灵码 x 函数计算:构建高效开发流程,加速项目交付
本方案基于通义大模型的通义灵码,提供代码生成、补全、优化及单元测试生成等能力,提升编码效率和质量。结合云效和函数计算 FC 进行代码管理、持续集成、部署发布,加速项目交付,为开发者提供智能编码、CI/CD、部署上线体验,加快产品迭代速度。
|
2月前
|
监控 Serverless 数据库
探索 Serverless 架构:云计算的新浪潮
【10月更文挑战第18天】Serverless架构,即无服务器架构,是一种新兴的云计算模式,让开发者无需管理服务器即可构建和运行应用。本文探讨了其核心概念、优势、挑战及最佳实践,强调了按需付费、自动扩展和开发效率等优点,同时也指出了冷启动、状态管理和调试监控等挑战。
|
1月前
|
机器学习/深度学习 监控 Serverless
探索Serverless架构:云计算的新前沿
【10月更文挑战第26天】本文探讨了Serverless架构作为新兴的云计算范式,如何改变应用的构建和部署方式。文章介绍了Serverless的核心概念、优势和挑战,并提供了开发技巧和实用工具,帮助开发者更好地理解和利用这一技术。
|
1月前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
82 1
|
1月前
|
监控 Serverless 数据库
探索 Serverless 架构:云计算的新浪潮
【10月更文挑战第23天】Serverless 架构是一种新兴的云计算范式,允许开发者构建和运行应用程序而无需管理服务器。本文深入探讨了 Serverless 的核心概念、优势、挑战及最佳实践,帮助开发者更好地理解和应用这一技术。
|
2月前
|
存储 消息中间件 人工智能
ApsaraMQ Serverless 能力再升级,事件驱动架构赋能 AI 应用
本文整理自2024年云栖大会阿里云智能集团高级技术专家金吉祥的演讲《ApsaraMQ Serverless 能力再升级,事件驱动架构赋能 AI 应用》。
|
1月前
|
监控 安全 Serverless
"揭秘D2终端大会热点技术:Serverless架构最佳实践全解析,让你的开发效率翻倍,迈向技术新高峰!"
【10月更文挑战第23天】D2终端大会汇聚了众多前沿技术,其中Serverless架构备受瞩目。它让开发者无需关注服务器管理,专注于业务逻辑,提高开发效率。本文介绍了选择合适平台、设计合理函数架构、优化性能及安全监控的最佳实践,助力开发者充分挖掘Serverless潜力,推动技术发展。
63 1