Apache Fury 0.10.3-rc2版本发布:性能优化与关键修复
Apache Fury是一个高性能、跨语言的序列化框架,旨在为分布式计算和大数据处理场景提供极致的序列化性能。该项目支持Java、Python等多种语言,通过创新的二进制编码和内存布局优化,能够显著提升数据传输效率。
核心改进与修复
Java模块的重要更新
本次版本在Java模块中进行了多项关键修复和功能增强:
-
二进制读取优化:修复了
readVarUint36Small方法的读取逻辑,确保无论剩余缓冲区大小如何都能正确读取完整比特位。这一改进对于处理变长整数编码的场景尤为重要,能够避免数据截断导致的解析错误。 -
输入流可靠性增强:修正了
FuryObjectInputStream.read方法的行为,确保当请求长度大于0时永远不会返回0。这一修复解决了在某些边缘情况下可能出现的流读取不完整问题。 -
字符串处理改进:优化了
MetaStringBytes对空字符串的处理逻辑,消除了潜在的边界条件问题。 -
Protobuf兼容性:新增了对Protobuf消息和字节字符串的序列化支持,使得Fury能够更好地与现有Protobuf生态系统集成。
-
兼容模式修复:解决了兼容模式下父类字段丢失的问题,增强了向后兼容性。
Python模块的构建改进
Python模块在此版本中主要解决了构建系统的问题:
-
改用
pyproject.toml作为构建配置文件,这符合Python社区最新的打包标准,能够提供更可靠的构建体验。 -
改进了测试异常信息的输出,便于开发者快速定位问题。
-
完善了依赖管理,确保pyarrow等关键依赖能够正确安装。
基础设施与支持策略调整
-
移除了对Node.js 12的支持,这是考虑到Node.js 12已经不再维护。
-
优化了测试依赖管理,将
fury-test-core明确标记为测试依赖,避免不必要的依赖传递。
技术价值与影响
这个版本虽然是一个候选发布版(rc2),但包含了多项重要的稳定性修复和功能增强。对于Java用户而言,二进制处理可靠性的提升和Protobuf支持的加入尤其值得关注;Python用户则能获得更稳定的构建体验。
这些改进使得Apache Fury在关键业务场景中的可靠性得到进一步提升,特别是在需要处理复杂数据类型和高吞吐量的分布式系统中。框架的跨语言特性也得到了加强,为多语言微服务架构提供了更好的支持。
对于考虑采用高性能序列化方案的用户,这个版本标志着Apache Fury在成熟度和功能完备性上又向前迈进了一步。项目团队通过解决实际使用中发现的问题,持续提升框架的健壮性和易用性。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
LongCat-AudioDiT-1BLongCat-AudioDiT 是一款基于扩散模型的文本转语音(TTS)模型,代表了当前该领域的最高水平(SOTA),它直接在波形潜空间中进行操作。00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0245- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
HivisionIDPhotos⚡️HivisionIDPhotos: a lightweight and efficient AI ID photos tools. 一个轻量级的AI证件照制作算法。Python05