This is an automated email from the ASF dual-hosted git repository.

chaokunyang pushed a commit to branch fix-kotlin-blog-compatibility
in repository https://gitbox.apache.org/repos/asf/fory-site.git

commit 4994dae7cdd3b2820776d9721a98591065ffdf2e
Author: chaokunyang <[email protected]>
AuthorDate: Tue Sep 8 11:46:51 2026 +0800

    Clarify Kotlin JSON application background
---
 blog/2026-09-07-fory_kotlin_json.md                            | 10 ++++------
 .../2026-09-07-fory_kotlin_json.md                             | 10 ++++------
 2 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/blog/2026-09-07-fory_kotlin_json.md 
b/blog/2026-09-07-fory_kotlin_json.md
index 682e4e0847a..f90353f8b2a 100644
--- a/blog/2026-09-07-fory_kotlin_json.md
+++ b/blog/2026-09-07-fory_kotlin_json.md
@@ -6,17 +6,15 @@ authors: [chaokunyang]
 tags: [fory, kotlin, java, json, serialization, performance]
 ---
 
-**TL;DR**: Apache Fory JSON brings high-performance JSON serialization to 
Kotlin/JVM. Use data classes, constructor defaults, nullable properties, value 
classes, and sealed hierarchies directly, with String and UTF-8 APIs and no 
`kotlin-reflect` dependency. In benchmarks covering small messages and large 
documents, Fory delivers higher throughput than kotlinx.serialization, Moshi, 
and Jackson Kotlin.
+**TL;DR**: Apache Fory JSON brings high-performance JSON serialization to 
Kotlin/JVM. It maps data classes, value classes, and sealed hierarchies to JSON 
while preserving constructor defaults and nullability. String and direct UTF-8 
APIs are available without a `kotlin-reflect` dependency. In benchmarks 
covering small messages and large documents, Fory delivers higher throughput 
than kotlinx.serialization, Moshi, and Jackson Kotlin.
 
 <img src="/img/fory-logo-light.png" width="50%"/>
 
-## JSON That Fits Your Kotlin Models {#kotlin-models-as-json-contracts}
+## JSON Serialization in Kotlin Applications {#kotlin-models-as-json-contracts}
 
-Kotlin applications often describe API requests and responses with data 
classes. Default arguments determine what happens when an input is omitted, 
while nullable types express where null is allowed. Value classes distinguish 
domain values such as account IDs, and sealed hierarchies model alternatives 
such as different payment methods.
+Kotlin applications exchange JSON through HTTP APIs, message queues, and 
stored documents. Application code works with typed models, so each exchange 
involves converting between JSON and Kotlin objects. Reading a document 
includes constructing an object with the right arguments and running its 
initialization logic; writing it must preserve the values needed to reconstruct 
that object.
 
-A JSON library should follow those declarations when reading and writing your 
models. It should apply defaults to missing properties, enforce nullability 
inside collections, and run constructor initialization and validation when 
reconstructing objects. Its output should preserve the values needed to read 
the object back correctly.
-
-Apache Fory JSON supports these Kotlin models directly. Its Kotlin/JVM mapping 
layer preserves their type and construction rules while using Fory's 
high-performance JSON engine. Applications can exchange standard JSON text or 
UTF-8 bytes using familiar Kotlin declarations, without writing a custom 
adapter for each data class.
+These conversions also contribute to CPU usage and temporary allocations, 
especially when a service processes many messages or large documents. Apache 
Fory JSON combines Kotlin object mapping with a high-performance JSON engine: 
the Kotlin layer follows the model's type and construction rules, while the 
engine handles JSON parsing and output. The same mapping is available through 
String and direct UTF-8 APIs.
 
 ## Getting Started
 
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-blog/2026-09-07-fory_kotlin_json.md 
b/i18n/zh-CN/docusaurus-plugin-content-blog/2026-09-07-fory_kotlin_json.md
index 80fc84632a3..c6bda4b29b1 100644
--- a/i18n/zh-CN/docusaurus-plugin-content-blog/2026-09-07-fory_kotlin_json.md
+++ b/i18n/zh-CN/docusaurus-plugin-content-blog/2026-09-07-fory_kotlin_json.md
@@ -6,17 +6,15 @@ authors: [chaokunyang]
 tags: [fory, kotlin, java, json, serialization, performance]
 ---
 
-**摘要**:Apache Fory JSON 为 Kotlin/JVM 提供高性能 JSON 序列化。通过 String 和 UTF-8 
API,可以直接使用数据类、构造函数默认值、可空属性、值类和 sealed 层次结构,无需依赖 
`kotlin-reflect`。在涵盖小消息和大文档的基准测试中,Fory 的吞吐量高于 kotlinx.serialization、Moshi 和 
Jackson Kotlin。
+**摘要**:Apache Fory JSON 为 Kotlin/JVM 提供高性能 JSON 序列化,支持数据类、值类和 sealed 
层次结构,并保留构造函数默认值与可空性。它提供 String 和直接 UTF-8 API,无需依赖 
`kotlin-reflect`。在涵盖小消息和大文档的基准测试中,Fory 的吞吐量高于 kotlinx.serialization、Moshi 和 
Jackson Kotlin。
 
 <img src="/img/fory-logo-light.png" width="50%"/>
 
-## 让 JSON 遵循 Kotlin 模型的定义 {#kotlin-models-as-json-contracts}
+## Kotlin 应用中的 JSON 序列化 {#kotlin-models-as-json-contracts}
 
-Kotlin 应用经常用数据类描述 API 请求和响应。默认参数决定输入缺失时如何处理,可空类型明确哪些位置允许 null;值类区分账户 ID 
等领域值,sealed 层次结构则表示不同支付方式这样的多种可能。
+Kotlin 应用通过 HTTP API、消息队列和存储的文档交换 JSON,而应用代码使用具有明确类型的模型,因此每次交换都涉及 JSON 与 
Kotlin 对象之间的转换。读取文档时,需要用正确的参数构造对象,并执行初始化逻辑;写入时,则需要保留还原对象所需的值。
 
-JSON 
库在读写模型时也应遵循这些定义:为缺失属性使用默认值,检查集合内部的可空性,并在重建对象时执行构造函数中的初始化和校验。输出也应保留正确还原对象所需的值。
-
-Apache Fory JSON 直接支持这些 Kotlin 模型。它的 Kotlin/JVM 映射层保留模型的类型和构造规则,并使用 Fory 的高性能 
JSON 引擎处理数据。应用可以用熟悉的 Kotlin 声明交换标准 JSON 文本或 UTF-8 字节,无需为每个数据类编写自定义适配器。
+这些转换也会消耗 CPU 并产生临时内存分配,在处理大量消息或大文档的服务中尤其值得关注。Apache Fory JSON 将 Kotlin 
对象映射与高性能 JSON 引擎结合起来:Kotlin 层遵循模型的类型和构造规则,引擎负责 JSON 解析与输出。String 和直接 UTF-8 API 
均使用这套映射。
 
 ## 快速开始 {#getting-started}
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to