写点什么

通过与模式注册表集成,AWS Lambda 获得对 Kafka 事件的原生 Avro 和 Protobuf 支持

  • 2025-07-02
    北京
  • 本文字数:1288 字

    阅读完需:约 4 分钟

大小:634.02K时长:03:36
通过与模式注册表集成,AWS Lambda获得对Kafka事件的原生Avro和Protobuf支持

亚马逊云科技宣布,在预置模式下,在利用Apache Kafka事件源映射(ESM)时,AWS Lambda原生支持Apache AvroProtocol Buffers(Protobuf)格式事件。据该公司称,这一增强显著简化了通过直接与流行的模式注册表的集成,包括 AWS Glue Schema Registry (GSR)、Confluent Cloud Schema Registry(CCSR)和自管理的Confluent schema Registry (SCSR),来处理高效的二进制 Kafka 事件。

 

以前,使用 Avro 和 Protobuf 作为 Kafka 数据的组织,因其紧凑的消息大小、快速的序列化和反序列化以及强大的模式演变而受到重视,必须在 Lambda 函数中编写自定义代码来验证、反序列化和过滤这些事件。有了这个新功能,Lambda 的 ESM 现在可以原生处理这些复杂性,将模式注册中心集成逻辑从应用层移动到托管服务。AWS Lambda 的首席工程师 Rajesh Pandey 在 LinkedIn的帖子中强调了这种简化:

 

不再需要在函数中连接复杂的反序列化器或处理模式解析。只需配置它,Lambda 就会在代码运行之前处理剩下的工作——模式获取、验证和解码。

 

内置的集成意味着传入的JSON Schema、Avro 和 Protobuf 记录将根据其注册的模式自动进行验证,这允许开发人员在集中和一致地共享数据模式的同时使用和过滤这些更有效的二进制格式。此外,开发人员现在可以使用 Kafka 的开源 ConsumerRecords 接口构建他们的函数,并且在 AWS Lambda 的Powertools的帮助下,直接访问由 Avro 或 protobuf 生成的业务对象,而无需编写自定义的反序列化代码。

 

Lambda 函数还可以接收干净的、经过验证的 JSON 数据,而不管原始的序列化格式如何,从而进一步简化了开发。还可以在上游设置事件过滤规则,以便在函数调用之前丢弃不相关的事件,从而优化计算成本。亚马逊云科技无服务器英雄 Yan Cui 在LinkedIn上进一步强调了这一优势,他表示:

 

但最重要的是,它允许你在 ESM 级别(而不是在你的代码中)过滤事件,因此它应该可以通过减少不必要的 Lambda 调用来节省一些成本。

 

配置需要启用 Kafka ESM 的预配置模式,并通过亚马逊云科技管理控制台、AWS CLI、SDK 或基础设施即代码(IaC)工具,如 AWS Serverless Application Management(ASM)或 AWSAWS Cloud Development Kit(CDK),指定模式注册表设置(端点、身份验证和验证字段)。正如 Julian Wood 和 Nihar Sheth 在 AWS Compute 博客中所写的那样:

 

这个新功能适用于 Amazon Managed Streaming for Apache Kafka (Amazon MSK)、Confluent Cloud和自管理的 Kafka 集群。要开始使用,请将现有的 Kafka ESM 更新到预置模式,并添加模式注册表配置,或者在预置模式下创建一个新的 ESM,并启用模式注册表集成。

 


(来源:亚马逊云科技 博客文章

 

ESM 通过检测更新的模式 id 和获取最新的定义来自动处理模式演变。对于错误处理,可以将验证或反序列化失败的事件路由到配置的故障目的地,如 Amazon SQS、SNS 或 S3,以进行调试。

 

AWS Lambda 中的 Apache Avro 和 Protocol Buffers (Protobuf)格式事件通常在 AWS Lambda Kafka ESM 可用的所有亚马逊云科技商业区域中可用,除了以色列(特拉维夫),亚太地区(马来西亚)和加拿大西部(卡尔加里)。

 

原文链接:

https://www.infoq.com/news/2025/06/aws-lambda-avro-protobuf-kafka/

2025-07-02 16:181

评论

发布
暂无评论
发现更多内容

模块一:

kk

#架构实战营

🏆(不要错过!)【CI/CD技术专题】「Jenkins实战系列」(2)Jenkins实现自动化部署+自动化合并其他分支

码界西柚

jenkins CI/CD 7月日更

This post is all you need(①多头注意力机制原理)

月来客栈

深度学习 Transformer

程序员考证有什么现实意义? | 话题讨论

happlyfox

话题讨论

被面试官问的Android问题难倒了,3面直接拿到offer

欢喜学安卓

android 程序员 面试 移动开发

蜕变中的B站:给各大自媒体平台带来那些启发

石头IT视角

5G云计算齐发力,云电脑的春天到了吗?

脑极体

架构训练营模块一作业

高铎

架构实战营

Apache Dubbo---- RPC通信

是老郭啊

dubbo Dubbo服务 RPC框架 Apache Dubbo Spring Dubbo

深入理解搜索引擎——开篇

药老算法

数据挖掘 机器学习 搜索引擎 全文检索 向量检索

靠着这份Java面试题跟答案,我从 14K 变成了 28K!

Java 程序员 架构 面试

模块一作业

MX

注册中心篇,欣赏阿里开源Nacos

下雨喽

Java 设计 nacos

5分钟速读之Rust权威指南(三十七)模式性质

wzx

rust

《持之以恒的从事运动》四

Changing Lin

GitHub标星90K+ 的算法小抄,全球排名 36,到底有多牛逼?

Java 程序员 架构 面试

【从零开始学爬虫】采集事业单位最新招聘信息

前嗅大数据

大数据 爬虫 数据采集 采集网页 采集招聘信息

JVM--垃圾回收算法

是老郭啊

JVM 垃圾回收机制 JVM垃圾回收原理

如何轻松启动Docker服务

吴脑的键客

Docker

微信业务架构图 & 学生管理系统

gawaine

架构实战营

yidong

方白

【又是干货】史诗级漏洞挖掘的过程快get一下

网络安全学海

运维 网络安全 信息安全 渗透测试 漏洞修复

架构实战营--模块一作业

小牧ah

架构实战营

非对称风险:你需要为行为结果负责吗?

石云升

读书笔记 风险 7月日更

分析一下微信朋友圈的高性能复杂度

NewBranSTONE

架构实战营

智能运维(AIOps)系列之二:什么是人工智能

micklongen

人工智能 AIOPS 智能运维

草稿20210707

cc=o

架构实战营 草稿

微进程:微服务中后台作业的一种新架构设计模式

白亦杨

微服务

Cobar源码分析之AST

捉虫大师

sql AST cobar

那些年Android面试官常问的知识点,真香!

欢喜学安卓

android 程序员 面试 移动开发

架构实战营第一期--模块一作业

clay

架构实战营

通过与模式注册表集成,AWS Lambda获得对Kafka事件的原生Avro和Protobuf支持_亚马逊云科技_Steef-Jan Wiggers_InfoQ精选文章