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

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

2025-06-15 01:26:16作者:宣海椒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在成熟度和功能完备性上又向前迈进了一步。项目团队通过解决实际使用中发现的问题,持续提升框架的健壮性和易用性。

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

项目优选

收起
kernelkernel
deepin linux kernel
C
22
6
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
136
1.89 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
金融AI编程实战金融AI编程实战
为非计算机科班出身 (例如财经类高校金融学院) 同学量身定制,新手友好,让学生以亲身实践开源开发的方式,学会使用计算机自动化自己的科研/创新工作。案例以量化投资为主线,涉及 Bash、Python、SQL、BI、AI 等全技术栈,培养面向未来的数智化人才 (如数据工程师、数据分析师、数据科学家、数据决策者、量化投资人)。
Jupyter Notebook
71
63
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
344
1.28 K
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
918
550
PaddleOCRPaddleOCR
飞桨多语言OCR工具包(实用超轻量OCR系统,支持80+种语言识别,提供数据标注与合成工具,支持服务器、移动端、嵌入式及IoT设备端的训练与部署) Awesome multilingual OCR toolkits based on PaddlePaddle (practical ultra lightweight OCR system, support 80+ languages recognition, provide data annotation and synthesis tools, support training and deployment among server, mobile, embedded and IoT devices)
Python
46
1
easy-eseasy-es
Elasticsearch 国内Top1 elasticsearch搜索引擎框架es ORM框架,索引全自动智能托管,如丝般顺滑,与Mybatis-plus一致的API,屏蔽语言差异,开发者只需要会MySQL语法即可完成对Es的相关操作,零额外学习成本.底层采用RestHighLevelClient,兼具低码,易用,易拓展等特性,支持es独有的高亮,权重,分词,Geo,嵌套,父子类型等功能...
Java
36
8
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
193
273
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
59
16