借助 Eventarc,您可以构建事件驱动型架构,而无需实现、自定义或维护底层基础架构。
Eventarc 提供两个版本:Eventarc Advanced 和 Eventarc Standard。
这两个版本都提供可伸缩的无服务器全代管式事件处理解决方案,可让您使用松散耦合的服务(这些服务会由状态变化触发并对状态变化做出反应,即事件)异步将消息从来源路由到目标。这两个版本均支持各种事件提供方和目的地(包括 Google Cloud 服务、自定义应用、SaaS 应用和第三方服务),同时为您管理传送、安全、授权、可观测性和错误处理。
请注意,Eventarc 的这两个版本的底层数据模型是相同的。随着使用情形的复杂性不断增加,您可以选择从使用 Eventarc Standard 无缝过渡到使用 Eventarc Advanced。
版本概览
以下是这两个版本的概述。如需了解更多详细信息,请参阅 Eventarc Advanced 概览和 Eventarc Standard 概览。
- Eventarc Advanced
Eventarc Advanced 是一个全代管式平台,可用于构建事件驱动型架构。它允许您收集系统中发生的事件,并将其发布到中央总线。感兴趣的服务可以通过创建注册来订阅特定消息。您可以使用总线实时路由来自多个来源的事件,并将其发布到多个目标位置,还可以选择在将事件传递到目标位置之前对其进行转换。 Eventarc Advanced 功能丰富,非常适合具有复杂事件和消息传递需求的组织,特别是那些难以管理众多 Pub/Sub 主题、Kafka 队列或其他第三方消息传递系统的组织。Eventarc Advanced 可为管理员提供增强的集中式可见性和控制,使组织能够连接不同项目中的多个团队。
借助 Eventarc Advanced,您可以接收、过滤、转换、路由和传送不同事件提供方与目的地之间的消息
(点击图表可放大)。- Eventarc Standard
对于侧重于将事件从事件提供方简单地传递到事件目的地的应用,建议使用 Eventarc Standard。借助 Eventarc,您可以快速轻松地使用 Google 事件,只需定义触发器,根据来源、类型和其他属性过滤入站事件,然后将这些事件路由到指定的目标位置即可。
借助 Eventarc Standard,您可以过滤事件并将其从事件提供方路由到事件目的地(点击图表可放大)。
功能比较表格
下表可帮助您在 Eventarc Advanced 和 Eventarc Standard 之间做出选择。本文假定您熟悉事件驱动型架构的基本概念。功能 | Eventarc Advanced | Eventarc Standard |
---|---|---|
访问权限控制 | 使用 IAM 进行精细的消息级访问权限控制和集中式治理 请参阅使用 IAM 进行访问权限控制 |
请参阅使用 IAM 进行访问权限控制 |
容量 | 自动供应 | 自动供应 |
客户端库语言 | Java、Python、Go、Node.js、C++、C#、PHP、Ruby 请参阅 Eventarc 客户端库 |
Java、Python、Go、Node.js、C++、C#、PHP、Ruby 请参阅 Eventarc 客户端库 |
合规性标准 | 不适用于预览版中的任何功能 | 请参阅合规性标准 |
跨项目事件交付 | 支持 请参阅发布来自 Google 来源的事件 |
不支持 |
客户管理的加密密钥 | 是 请参阅使用客户管理的加密密钥 |
是 请参阅使用客户管理的加密密钥 |
支持死信队列 | 否 | 可以,通过 Pub/Sub 死信主题 请参阅重试事件 |
事件格式 | 事件以 CloudEvents 格式传送到目的地 请参阅事件格式 您可以选择通过定义 HTTP 绑定来覆盖此行为 |
事件以 CloudEvents 格式传送到目的地 请参阅事件格式 |
事件大小 | 1 MB(上限) 请参阅配额和限制 |
不得超过 512 KB 请参阅配额和限制 |
位置 | 请参阅 Eventarc Advanced 位置 | 请参阅 Eventarc Standard 位置 |
消息过滤 | 根据任意和所有事件属性进行过滤 | 按事件类型和特定属性进行过滤 |
信息路由 | 多个提供商对多个目的地 |
提供方到目的地 |
消息架构转换 | 是 请参阅转换已接收事件的格式 |
否 |
消息转换 | 可以,通过 CEL 表达式 请参阅转换已接收事件 |
否 |
可观测性 | 通过 Google Cloud Observability(例如 Cloud Logging 和 Cloud Monitoring) 请参阅 Eventarc 审核日志记录 |
通过 Google Cloud Observability(例如 Cloud Logging 和 Cloud Monitoring) 请参阅 Eventarc 审核日志记录 |
外送订单 | 不保证按顺序的先进先出传送 | 不保证按顺序的先进先出传送 |
价格 | 请参阅 Eventarc 价格 | 请参阅 Eventarc 价格 |
区域性 | 区域性 请参阅了解地区性 |
区域级、全球级 请参阅了解 Eventarc 位置 |
REST 端点 | https://eventarc.googleapis.com 请参阅 Eventarc API https://eventarcpublishing.googleapis.com 请参阅 Eventarc Publishing API |
https://eventarc.googleapis.com 请参阅 Eventarc API |
重试和保留 | 向目标至少传送一次事件;默认消息保留时长为 24 小时,具有指数退避算法延迟 请参阅重试事件 |
向目标至少传送一次事件;默认消息保留时长为 24 小时,具有指数退避算法延迟 请参阅重试事件 |
服务限制 | 每个 Google Cloud 项目 一个总线每个 Google Cloud 项目每个区域 100 个流水线请参阅配额和限制 |
每个位置每个 Google Cloud 项目 500 个触发器。请参阅配额和限制 |
使用 VPC Service Controls 的服务边界 | 可以 请参阅使用 VPC Service Controls 设置服务边界 |
可以 请参阅使用 VPC Service Controls 设置服务边界 |
支持的来源 | Google 提供方 使用 Eventarc Publishing API 的直接发布者 请参阅事件提供方和目的地 |
Google 提供方 通过审核日志的 Google 提供方 第三方提供方 请参阅事件提供方和目的地 |
支持的目标 | Cloud Run functions(包括第 1 代) Cloud Run 作业和服务 Eventarc 高级总线 VPC 网络中的内部 HTTP 端点 Pub/Sub 主题 工作流 请参阅事件提供方和目的地 |
Cloud Run 函数 Cloud Run 服务 VPC 网络中的内部 HTTP 端点 私有和公共 GKE 服务的公共端点 工作流 请参阅事件提供方和目的地 |