首页
/ Apache Fury 0.10.3-rc2版本发布:性能优化与关键修复

Apache Fury 0.10.3-rc2版本发布:性能优化与关键修复

2025-06-15 10:24:40作者:宣海椒Queenly

Apache Fury是一个高性能、跨语言的序列化框架,旨在为分布式计算和大数据处理场景提供极致的序列化性能。该项目支持Java、Python等多种语言,通过创新的二进制编码和内存布局优化,能够显著提升数据传输效率。

核心改进与修复

Java模块的重要更新

本次版本在Java模块中进行了多项关键修复和功能增强:

  1. 二进制读取优化:修复了readVarUint36Small方法的读取逻辑,确保无论剩余缓冲区大小如何都能正确读取完整比特位。这一改进对于处理变长整数编码的场景尤为重要,能够避免数据截断导致的解析错误。

  2. 输入流可靠性增强:修正了FuryObjectInputStream.read方法的行为,确保当请求长度大于0时永远不会返回0。这一修复解决了在某些边缘情况下可能出现的流读取不完整问题。

  3. 字符串处理改进:优化了MetaStringBytes对空字符串的处理逻辑,消除了潜在的边界条件问题。

  4. Protobuf兼容性:新增了对Protobuf消息和字节字符串的序列化支持,使得Fury能够更好地与现有Protobuf生态系统集成。

  5. 兼容模式修复:解决了兼容模式下父类字段丢失的问题,增强了向后兼容性。

Python模块的构建改进

Python模块在此版本中主要解决了构建系统的问题:

  1. 改用pyproject.toml作为构建配置文件,这符合Python社区最新的打包标准,能够提供更可靠的构建体验。

  2. 改进了测试异常信息的输出,便于开发者快速定位问题。

  3. 完善了依赖管理,确保pyarrow等关键依赖能够正确安装。

基础设施与支持策略调整

  1. 移除了对Node.js 12的支持,这是考虑到Node.js 12已经不再维护。

  2. 优化了测试依赖管理,将fury-test-core明确标记为测试依赖,避免不必要的依赖传递。

技术价值与影响

这个版本虽然是一个候选发布版(rc2),但包含了多项重要的稳定性修复和功能增强。对于Java用户而言,二进制处理可靠性的提升和Protobuf支持的加入尤其值得关注;Python用户则能获得更稳定的构建体验。

这些改进使得Apache Fury在关键业务场景中的可靠性得到进一步提升,特别是在需要处理复杂数据类型和高吞吐量的分布式系统中。框架的跨语言特性也得到了加强,为多语言微服务架构提供了更好的支持。

对于考虑采用高性能序列化方案的用户,这个版本标志着Apache Fury在成熟度和功能完备性上又向前迈进了一步。项目团队通过解决实际使用中发现的问题,持续提升框架的健壮性和易用性。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
827
5.48 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
494
515
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
783
1.57 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
800
1.14 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
970
2.28 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
480
312
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.01 K
766
cannbot-skillscannbot-skills
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Markdown
1.26 K
808
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
647
284