最IN的云原生架构,阿里云 Serverless 事件总线 EventBridge 重磅发布

简介: Serverless 是云计算下一个10年的主要形态,通过大量端到端的整合和云服务的集成,能极大地提高研发效率。了解阿里云 Serverless 产品家族的最新进展,包括函数计算FC、Serverless应用引擎SAE和 Serverless事件总线EventBridge。

发布会传送门

产品详情页

EventBridge 简介

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

近年来,随着云原生和 Serverless 概念的深入人心,事件驱动再一次成为了云应用架构领域的热门词汇。在 2018 年,Gartner 评估报告将 Event-Driven Model 列为10大战略技术趋势之一,事件驱动架构(EDA)将成为未来微服务的主流。该报告同时做出了以下预言:

到 2022 年,事件通知的软件模型将成为超过 60% 的新型数字化商业的解决方案;
到 2022 年,超过 50% 的商业组织将参与到事件驱动的数字化商业服务的生态系统当中;
同年 5 月,云原生 CNCF 基金会托管了开源 CloudEvents 项目,该项目旨在用统一和规范的格式来描述事件,来加强不同的服务、平台以及系统之间的互操作性,事件在云原生大图中的重要性不言而喻。

与此同时,在阿里云上实践事件驱动架构却不是一件简单的事情:

阿里云的云产品,从 IaaS 到 PaaS,每天都有数以亿计的事件产生,但却没有一种简单和统一的方式来触达这些事件;

很多云产品有自建的事件中心,但没有采用统一的标准和规范来描述这些事件,用户无法用同样的方式来解释这些事件;

云上的的事件目前非常独立,无法形成规模效应,很难挖掘出有用的业务价值,只有充分发挥数据的规模效应,建立起数据的血缘关系,我们才能更好的发掘出数据的价值;

目前事件应用的场景偏离线分析,因缺乏开箱即用的中心化事件处理能力,无法应用在在线业务的场景。
9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

为了解决这些问题,阿里云正式发布了最新云产品 EventBridge,一款无服务器事件总线服务,其使命是作为云事件的枢纽,以标准化的 CloudEvents 1.0 协议连接云产品和云应用,提供中心化的事件治理和驱动能力,帮助用户轻松构建松耦合、分布式的事件驱动架构;另外,在阿里云之外的云市场上有海量垂直领域的 SaaS 服务,EventBridge 将以出色的跨产品、跨组织以及跨云的集成与被集成能力,助力客户打造一个完整的、事件驱动的、高效可控的上云新界面。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

EventBridge 核心能力

作为一款全新的云产品,EventBridge 是完全面向云原生设计和架构的,EventBridge 提供的核心能力分为以下几类。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

集成与被集成

集成能力和集成度是产品的关键点,EventBridge 将以低成本甚至零成本,低代码甚至0代码,跨组织和跨云的方式去连接云产品、云应用以及SaaS应用。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

集成云产品

今天的阿里云,有数百个成熟的云产品,有数百万应用的计算实例,它们每天会产生亿级的云事件,但这些事件目前处于失控的状态,是一片尚未被挖掘的数据宝藏。EventBridge 将连接大部分阿里云的云产品,作为事件源或者事件目标,提高阿里云事件的中心化治理能力,充分挖掘云事件的业务价值;同时,通过一站式的云产品连接服务,帮助用户更好地上云和用云。

集成云应用

用户上云的最终目的是充分撬动云计算带来的技术红利,所以上云的过程不仅仅是 Rehost,还需要进行 Replatform 和 Refactor,EventBridge 提供丰富的集成能力,让应用更好地连接和使用云服务。目前用户可以通过 EventBridge 官方的 HTTP 接口、多语言客户端(Java、Golang、Python、C#、PHP)以及 CloudEvents 社区的开源客户端轻松接入阿里云的 EventBridge 生态。

集成第三方 SaaS

对于 SaaS,阿里云坚持被集成的战略,可以预计在阿里云上会成长出一批又一批优秀的 SaaS 提供商,EventBridge 将为 SaaS 提供便捷的方式融入阿里云生态体系,与阿里云一方云产品深度融合。

协调与驱动

Serverless 应用架构的最佳实践便是事件驱动,无论是传统的微服务还是函数计算,EventBridge 将极大地简化事件驱动架构的研发成本,海量的函数以及微服务将以事件的形式被有序协调。
9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

关于编排(Orchestration)和协调(Choreography),Gartner 报告中对比了两种架构的区别,通过请求驱动来组合和编排微服务和函数的方式带来了很多不必要的强耦合,而通过事件驱动的方式来协调微服务和函数,将是更彻底的解耦,提高程序的韧性,业务的开发也将变得更加敏捷和高效。

数据通道

EventBridge 另一个核心能力是为流式的数据承担通道的责任,通过 CloudEvents 规范和 Schema 注册表(Coming Soon)来统一描述这些数据,并提供基础的过滤和转换的能力,在不同的数据仓库之间、数据处理程序之间、数据分析和处理系统之间进行数据路由。

为此,EventBridge 即将上线 Connect 能力,通过大量的 Source 和 Sink Connector 将用户的数据在云上流动起来。

EventBridge 基本模型

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

如上图所示,事件从事件源被投递至事件总线,经过规则的过滤和转换处理,最终被投递给多种事件目标,完成事件的处理。

事件

事件,代表了事情的发生、条件和状态的变化。在云的时代,事件是无处不在的,云的任何一个产品、一个应用、甚至一个资源都在时刻发生事件,它们称为事件源。事件源来自不同的组织和环境,事件源对事件将被如何响应没有任何预期,事件目标通过中心化的事件总线来订阅事件,依赖事件具备的自描述能力,来低成本地理解和处理事件。

EventBridge 中的事件通过云原生事件标准 CloudEvents 来描述,CloudEvents 是 EventBridge 生态系统中的一等公民。EventBridge 采取 CloudEvents 的主要原因为:

采取统一的云原生事件标准,有助于统一表达来自不同事件源中的事件,提升事件驱动程序的互操作性。
标准化,用户没有厂商锁定的担忧,基于 CloudEvents 的事件驱动程序可以在不同云之间随意移植。
CloudEvents 具备非常简单的结构,如下 JSON 文本为一个 CloudEvents 事件。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

阿里云 EventBridge 目前支持两类事件:自定义事件和阿里云服务事件。

阿里云服务事件:具备预先定义好的 Schema,来自各个云产品关于用户资源状态变更的事件,比如云视频会议事件,包括会议开始、结束、成员变更等会议事件。
自定义事件:用户可以使用 CloudEvents 社区的开源 SDK、EventBridge 官方的多语言轻量级 SDK、EventBridge Connect、WebHook等(后两种能力即将开放)方式投递自定义事件至 EventBridge,丰富的事件源接入方式助力客户快速打造事件驱动的 Serverless 应用程序。

事件总线

事件总线是一个抽象概念,是事件的载体,阿里云 EventBridge 的事件总线具备用户纬度的多租户能力,每个总线有唯一的资源 ARN。事件发送至事件总线,随后被事件规则路由至事件目标。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

如上图所示,阿里云的事件总线分为两类:

默认事件总线:用户开通 EventBridge 时自动创建 default 总线,所有接入的云服务事件都将主动投递至 default 上,对于用户来说云产品的事件是开箱即用的。
自定义事件总线:用户自行创建,用来接受自定义的事件,是用户研发事件驱动架构程序的必备资源。

规则

规则对事件总线中的事件进行过滤,过滤成功的事件经过一定的转换路由到规则中指定的阿里云目标服务或者HTTP网关。

EventBridge 中的规则有两端,一端连接事件总线,一端连接事件目标,并且是一对多的关系,每个规则最多关联 5 个事件目标。同时,规则中的过滤和转换组件,为用户提供了轻量级的事件过滤和转换的能力。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

规则中过滤能力由事件模式(Event Pattern)提供,当前支持的过滤模式包含:

  • 指定值匹配
  • 前缀匹配
  • 后缀匹配
  • 除外匹配
  • 数值匹配
  • 数组匹配
  • 以及复杂的组合逻辑匹配

规则中的转换用于将 CloudEvents 转变事件目标接受的格式,EventBridge 提供了四种转换器:

  • 完整事件:不做转换,直接投递原生 CloudEvents。
  • 部分事件:通过 JsonPath 语法从 CloudEvents 中提取部分内容投递至事件目标。
  • 常量:事件只起到触发器的作用,投递内容为常量。
  • 模板转换器:通过定义模板,灵活地渲染自定义的内容投递至事件模板。

EventBridge 产品架构

EventBridge 作为一款全新的云产品,全面采用了云原生技术栈,如下图所示,EventBridge 搭建在容器服务提供的 Kubernetes 集群之上,设计了一整套基于 K8S 的 DevOps 研发体系,研发阶段实践 GitOps 提高交付和迭代效率,测试阶段配备了大量的自动化测试,发布阶段有完善的灰度机制,运维阶段依赖 K8S 的自愈能力大幅度降低运维成本,并通过 Prometheus ,SLS 等产品建立了云原生的监控体系。

除此之外,EventBridge 依赖 RocketMQ 提供核心的事件存储能力,RocketMQ 作为阿里自研的消息中间件,经历过多次双11流量高峰的考验和无数个阿里内部业务场景的验证,为 EventBridge 提供了高 SLA 的,高性能的事件传输服务。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

EventBridge 典型场景

在本章节,我们根据 EventBridge 当前以及具备的能力,列举三个典型的案例。随着 EventBridge 生态的丰富,未来可以挖掘更多的业务场景,我们后续也会出一系列的样板间项目,方便用户快速将事件驱动的方式契合大盘自己的业务场景中。

场景 1:360 度业务全景

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

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

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

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

场景 2:网页截图制作每日快报

场景 1 是一个比较复杂的案例,再来看一个可以快速上手的场景:使用 EventBridge 驱动函数计算帮我们进行网页截图,并通过邮箱发送出去,制作每日快报。

  • 首先,业务系统通过分析,计算出今日有价值的头条新闻,并把新闻 URL 地址通过 Event,发送给EventBridge;
  • EventBridge 接收到 Event 后,根据预配置的规则,开始触发函数计算的网页截图程序进行工作;
  • 函数计算接收到 Event 后,自动创建资源,并运行网页截图程序进行截图,保存到 OSS,同时通知 EventBridge 截图完成,然后自动释放资源;
  • EventBridge 接收到函数计算完成的 Event 后,根据预配置的规则,开始触发邮箱服务,将网页截图以邮件的形式发送给目标用户;

从这个例子中,可以发现:Serverless 和 EventBridge,是云原生时代一个非常强有力的组合。通过事件去驱动函数计算,让业务按需调度资源,不仅可以预防突发流量带来的稳定性风险,还可以最大程度的降低成本,按需付费。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

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

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

  • 仓库的家具商品入库事件、门店的顾客进店事件通过 EventBridge 实时流转到在线分析系统,让我们知道现在店内有哪些家具商品,进店顾客的家具偏好是什么,并推送给商场门店的导购员或则广告屏,帮助门店更好的下单转化;
  • 顾客在线电子支付后,订单信息发送到 EventBridge,并触发第三方物流公司进行送货上门;
  • 第三方物流公司,可以实时的将家具的位置信息通过 EventBridge 推送给移动端APP,客户可以通过 APP 很方便的实时了解到自己的家具到哪了,预估还需要多久送到家;
  • 所有这些通过EventBridge流转的在线业务事件数据,最终通过EventBridge流转到离线分析系统,自动生成业务报表,供管理层做绩效考核或则运营决策。
    9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

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

EventBridge 未来规划

作为云上的事件枢纽,EventBridge 最核心的能力就是连接。所以,未来EventBridge会重点建设生态网络。无论是在线业务场景、IoT 场景、还是大数据场景,都能够通过低代码甚至 0 代码的方式,集成到 EventBridge。如果你的应用部署在私有 IDC 机房,或则其他云厂商环境,我们也都将提供安全可靠的集成方式。

当然,云时代下这么庞大的神经中枢系统,不是一日可以建成的,需要大家一起的努力。所以未来,EventBridge 同时会致力于开源社区建设,也希望志同道合的朋友一起加入进来,成为云原生时代,Event-Driven Model 的第一批布道师。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

 

原文链接
本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/514771.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智能技术改变淘宝,阿里巴巴首次详解核心商业AI体系

简介: 双11背后的万亿人次商品需求:淘宝创造新一代智能科技,淘宝成为超大规模智能APP,前沿科技重塑双11人货场。 图:淘宝APP已成为超大规模智能APP “淘宝APP已成为超大规模智能APP。”阿里巴巴集团资深副总裁周靖人11…

融云任杰:强互动,RTC下一个“爆点”场景|拟合

从无序中寻找踪迹,从眼前事探索未来。 2021 年正值黄金十年新开端,CSDN 以中立技术社区专业、客观的角度,深度探讨中国前沿 IT 技术演进,推出年度重磅企划栏目——「拟合」,通过对话企业技术高管大咖,跟踪报…

TI Inside,情报协同的最佳实践

6月18日,以“新IN力 御万象”为主题的 TI Inside 威胁情报应用生态协同峰会在北京隆重召开。此次峰会吸引了数百位网络安全产业专家、龙头企业代表、威胁情报生态合作机构、分析机构以及权威媒体齐聚一堂,共同交流威胁情报的最佳应用实践,探讨…

IT、OT融合趋势下,西门子举办“第一届西门子工业边缘生态大会”

近日,西门子举办“第一届西门子工业边缘生态大会”,以“聚势边缘 共赋未来”为主题,来自全国机构专家、工业制造商、系统集成商、互联网伙伴、软件和大数据伙伴、媒体等生态伙伴深入交流未来工业的发展方向。 “边缘层融合IT和OT层&#xff0…

Android网络性能监控方案

背景 移动互联网时代,移动端极大部分业务都需要通过App和Server之间的数据交互来实现,所以大部分App提供的业务功能都需要使用网络请求。如果因为网络请求慢或者请求失败,导致用户无法顺畅的使用业务功能,会对用户体验造成极大影…

打破云原生时代存储瓶颈,SmartX 发布 K8s 云原生存储 IOMesh

编辑 | 宋 慧 供稿 | SmartX 头图 | 付费下载于视觉中国 专业超融合与分布式存储产品与解决方案提供商 SmartX 发布为 Kubernetes 设计和开发的云原生存储产品 IOMesh 预览版(以下简称“IOMesh”),加速数据库等有状态应用的容器化进程。 IO…

全球边缘计算大会:阿里云资深技术专家李克畅谈边缘计算的技术趋势与挑战

2020年11月7日,以“5G边缘计算“为主题的全球边缘计算大会在北京新世界大酒店成功召开,作为业内首个专门为边缘计算人打造的行业盛会,此次活动现场共有超过600来自政、产、学、研、用各界的企业负责人、权威技术专家、通信科技从业者、边缘计…

《科学:无尽的前沿》分享会在京举办,助力中国企业打造“科研的应许之地”

当今世界百年未有之大变局加速演进,疫情影响广泛深远,不稳定性不确定性明显增加。科技创新成为国际战略博弈的主要战场,围绕科技制高点的竞争空前激烈。 6月19日,远望智库、中信出版集团联合举办了新书《科学:无尽的前…

OpenYurt 深度解读:如何构建 Kubernetes 原生云边高效协同网络?

作者 | 郑超 导读:OpenYurt 是阿里巴巴开源的云边协同一体化架构,与同类开源方案相比,OpenYurt 拥有可实现边缘计算全场景覆盖的能力。在之前的一篇文章中,我们介绍了 OpenYurt 是如何在弱网和断网场景下实现边缘自治的。本文作为…

Dubbo-go 源码笔记(二)客户端调用过程

作者 | 李志信 导读:有了上一篇文章《Dubbo-go 源码笔记(一)Server 端开启服务过程》的铺垫,可以类比客户端启动于服务端的启动过程。其中最大的区别是服务端通过 zk 注册服务,发布自己的ivkURL并订阅事件开启监听&…

云原生时代需要什么样的存储系统?

导读:本文介绍了目前云原生环境下,支持有状态应用的几种典型存储方案的特点,并对市场主流的几个云原生存储产品实际测试性能进行对比。 现状 当前,云原生已经成为应用开发者在选择架构设计时的首选。云原生让应用开发者可以将所有…

mysql管理器源码_一个HelloWorld版的MySQL数据库管理器的设计与实现(源码)

2011年,实习期间写了一个简单的数据库管理器。今天,特意整理了下,分享给大家。有兴趣的同学,可以下载源码,瞧瞧。源码只有4个类:LoginGUI,DatabaseGUI,Record,MySQLModel。1.LoginGUI该类就是一个简单的登录…

我们身边的网络流量

作者:qinglianghu 一.网络流量中的善与恶 和我们一起在网上冲浪的不仅有你身边的亲朋好友,还有栖息在互联网上密密麻麻的网络爬虫。差不多每5次的网络浏览里,有2次是"虚假"的网络爬虫产生的。这些栖息在互联网上的爬虫也是有&quo…

58.3万笔/秒!看阿里的黑科技

简介: 11月11日0点刚过26秒,天猫双11的订单创建峰值就达到58.3万笔/秒,阿里云又一次扛住全球最大规模流量洪峰!58.3万笔/秒,这一数字是2009年第一次天猫双11的1457倍。数字的背后,隐藏着阿里巴巴很多不为人…

java方法重写_Java方法重写注意事项

1.重写方法的方法名和参数列表要和被重写方法一致。2.在 java 1.4版本以前,重写方法的返回值类型被要求必须与被重写方法一致,但是在java 5.0中放宽了这一个限制,添加了对协变返回类型的支持,在重写的时候,重写方法的返…

专访李飞飞 :从清华附中高材生到阿里飞刀,一口井钻出「云原生」

简介: 他初三上清华,如今是达摩院数据库首席科学家。李飞飞从学术界走向工业界,带领阿里云技术团队一手打造了云原生分布式数据库,让阿里「全面上云」的战役再下一城。今天,他用一口水井为我们道出了云原生&#xff01…

阿里雷卷:RSocket从入门到落地,RSocket让AJP换发青春

简介: 借助 RSocket 的架构提供,我们可以将之前比较复杂的方案简化,当然最最重要的是性能的提升,即便之前的一些性能提升技术点,可能由于一些约束等,现在和 RSocket 对接,那些问题都不存在啦&am…

英特尔拥抱开源,岂能没有杀手锏?

10 年前,Netscape 创始人、硅谷著名投资人马克安德森说“软件吞噬世界”,如今已发展为“开源吞噬世界”。据《2020年度 GitHub Octoverse 报告》显示,GitHub 上开发者数量达到 5600 万,新增 6000 万个存储库以及 19 亿个 contribu…

Java全能手册火了!Redis/Nginx/Dubbo/Spring全家桶啥都有!

前言本文是为了帮大家快速回顾了Java中知识点,这套面试手册涵盖了诸多Java技术栈的面试题和答案,相信可以帮助大家在最短的时间内用作面试复习,能达到事半功倍效果。本来想将文件上传到github上,但由于文件太大有的都无法显示所以…

云原生实时数仓首次在2020双11核心数据场景落地

简介: 这是史上数据量、计算量最大的一年,是实时处理要求最高、与机器智能结合性最强的一次双11,也是全球最大规模的一次云原生实践。背后作为数据核心支撑的大数据平台更是创下新的世界纪录。 刚刚结束的2020天猫双11又创下两项新记录&…