首页
学习
活动
专区
圈层
工具
发布

Apache Fory序列化框架新增对Kotlin和Scala的JSON支持

Apache Fory社区宣布发布Fory 1.7.0版本,此次更新为这款多语言序列化框架新增了对Scala 2.13、Scala 3以及Android、JVM和GraalVM Native Image平台上Kotlin的Fory JSON支持。

Apache Fory被描述为一款“极速”的序列化框架,适用于惯用领域对象、模式接口定义语言(IDL)以及跨语言数据交换。该框架借助即时编译(JIT)和零拷贝技术实现高性能,支持包括Java、Python、C++、Go、Rust以及JavaScript/TypeScript在内的12种编程语言。

Fory IDL是Apache Fory的一种模式定义语言,可实现类型安全的跨语言序列化。Fory IDL还能描述RPC服务,Fory编译器可以生成使用Fory序列化处理请求和响应负载的gRPC服务配套代码。

随着Fory 1.7.0的发布,开发者获得了适用于Scala 2.13和Scala 3的fory-json-scala模块。根据发布说明,Scala应用程序可以使用case class、构造函数默认值、Option、Either、元组、集合、映射以及值类来读写标准JSON。该模块可在JVM和GraalVM Native Image上运行。

Fory 1.7.0还引入了fory-json-kotlin模块,该模块可将Kotlin模型映射为标准JSON,同时保留构造函数默认值、可空性、无符号类型、值类以及泛型参数。该模块支持JVM、Android API 26及更高版本,以及GraalVM Native Image。

Fory 1.7.0版本的其他更新亮点包括:

GraalVM Native Image上的Fory JSON得到了增强,默认启用了构建时代码生成以及细粒度的生成编解码器缓存。

针对顶层数组和换行符分隔JSON(NDJSON)的增量JSON流解码功能,允许从分块UTF-8输入中逐步处理数据。

Swift平台支持范围已扩展至visionOS、watchOS、tvOS和Linux,现在还包括Swift gRPC代码生成功能。

Q&A

Q1:Apache Fory 1.7.0新增了哪些语言支持?

A:Fory 1.7.0新增了对Scala 2.13、Scala 3以及Android、JVM和GraalVM Native Image平台上Kotlin的JSON支持,分别通过fory-json-scala和fory-json-kotlin两个新模块实现。

Q2:Fory IDL是什么,有什么作用?

A:Fory IDL是Apache Fory的模式定义语言,可以实现类型安全的跨语言序列化。它还能描述RPC服务,Fory编译器可以据此生成使用Fory序列化处理请求和响应的gRPC服务配套代码。

Q3:Fory 1.7.0在GraalVM Native Image方面有哪些改进?

A:该版本增强了GraalVM Native Image上的Fory JSON支持,默认启用了构建时代码生成,并新增了细粒度的生成编解码器缓存功能,以提升性能表现。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O7WqpwtbyQs6iVr9zO_eLDtA0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

领券