Bento v1.7.0 版本发布:增强 XML 处理与 Protobuf 支持
Bento 是一个高性能的数据流处理框架,专注于简化复杂数据管道的构建和管理。它提供了丰富的输入输出连接器、处理器和转换工具,使开发者能够轻松地构建、部署和监控数据流应用程序。Bento 的设计理念强调灵活性和可扩展性,支持多种数据格式和协议,适用于从简单的日志处理到复杂的实时分析等各种场景。
近日,Bento 发布了 v1.7.0 版本,带来了多项重要功能增强和问题修复。这个版本特别关注于 XML 数据处理能力的提升和 Protobuf 支持的扩展,同时也改进了 HTTP 服务器输出功能并修复了一些关键问题。
XML 处理能力显著增强
v1.7.0 版本在 XML 数据处理方面进行了重大改进。新增的 xml_documents_to_json 和 xml_documents_to_json:cast 选项为 unarchive 处理器的 format 字段提供了更灵活的 XML 转换能力。这些选项允许开发者将 XML 文档转换为 JSON 格式,其中 cast 选项还能智能地将 XML 中的数据类型转换为对应的 JSON 数据类型,大大简化了异构系统间的数据交换。
更值得一提的是,这个版本引入了全新的 xml_documents 扫描器。这个扫描器能够消费一个或多个 XML 文档流,并将其分解为离散的消息。这一功能特别适合处理包含多个 XML 文档的连续数据流,如从消息队列或文件系统中读取的 XML 数据。xml_documents 扫描器会自动识别 XML 文档边界,确保每个文档都能被正确处理,而不会因为文档边界问题导致数据损坏或解析失败。
Protobuf 支持扩展:远程 Schema 注册表集成
对于使用 Protocol Buffers 的开发团队,v1.7.0 带来了一个令人兴奋的新功能。protobuf 处理器现在支持 bsr 字段,这意味着可以直接从远程的 Buf Schema Registry (BSR) 加载和使用 schema。这一改进显著简化了 Protobuf schema 的管理和分发流程,特别是在微服务架构中,不同服务可以轻松共享和同步 Protobuf 定义。
通过集成 BSR,开发者不再需要手动分发 .proto 文件或担心版本不一致的问题。Bento 现在可以直接从中央注册表获取最新的 schema 定义,确保数据序列化和反序列化的一致性。这一功能特别适合大规模分布式系统,其中多个服务需要交换 Protobuf 编码的消息。
HTTP 服务器输出支持 Server-Sent Events
在输出功能方面,v1.7.0 为 http_server 输出添加了 stream_format 和 heartbeat 字段,使其能够发射 Server-Sent Events (SSE)。SSE 是一种轻量级的服务器推送技术,允许服务器通过 HTTP 连接向客户端持续发送更新。
这一改进使得 Bento 能够更高效地处理实时数据推送场景,如实时监控、即时通知等。heartbeat 字段特别有用,它可以配置定期发送的心跳消息,保持连接活跃并检测客户端是否仍然在线。对于构建实时 Web 应用程序的开发人员来说,这一功能提供了简单而强大的工具来实现服务器到客户端的实时数据流。
关键问题修复与稳定性提升
除了新功能外,v1.7.0 还包含了一些重要的修复和改进:
-
改进了在优雅关闭期间对上下文取消/超时的处理,确保在关闭流时能正确记录错误日志。这一改进使得系统在关闭时的行为更加可预测,便于诊断问题。
-
修复了
MessageAwareRateLimit公共实现的注册问题,确保速率限制功能在各种场景下都能正常工作。这对于需要精确控制消息处理速率的应用程序尤为重要。
总结
Bento v1.7.0 版本通过增强 XML 处理能力、扩展 Protobuf 支持和改进 HTTP 服务器输出,为开发者提供了更强大、更灵活的数据流处理工具。特别是对 XML 和 Protobuf 的改进,使得 Bento 在处理现代数据格式方面更加全面。这些新功能和改进进一步巩固了 Bento 作为构建复杂数据管道的首选框架的地位,无论是处理传统数据格式还是实现实时数据流,都能提供出色的性能和灵活性。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C051
MiniMax-M2.1从多语言软件开发自动化到复杂多步骤办公流程执行,MiniMax-M2.1 助力开发者构建下一代自主应用——全程保持完全透明、可控且易于获取。Python00
kylin-wayland-compositorkylin-wayland-compositor或kylin-wlcom(以下简称kywc)是一个基于wlroots编写的wayland合成器。 目前积极开发中,并作为默认显示服务器随openKylin系统发布。 该项目使用开源协议GPL-1.0-or-later,项目中来源于其他开源项目的文件或代码片段遵守原开源协议要求。C01
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
agent-studioopenJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力TSX0127
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00