This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-website.git
The following commit(s) were added to refs/heads/master by this push:
new ab7359c9770 Add 3.2 migration docs (#1597)
ab7359c9770 is described below
commit ab7359c977044baf1a0e8f0987b2d3dbe4c3f7af
Author: Albumen Kevin <[email protected]>
AuthorDate: Sat Nov 12 16:49:59 2022 +0800
Add 3.2 migration docs (#1597)
---
.../3.1-to-3.2-compatibility-guide.md | 65 ++++++++++++++++++++++
1 file changed, 65 insertions(+)
diff --git
a/content/zh/docs3-v2/java-sdk/upgrades-and-compatibility/3.1-to-3.2-compatibility-guide.md
b/content/zh/docs3-v2/java-sdk/upgrades-and-compatibility/3.1-to-3.2-compatibility-guide.md
new file mode 100644
index 00000000000..4667fd07dbe
--- /dev/null
+++
b/content/zh/docs3-v2/java-sdk/upgrades-and-compatibility/3.1-to-3.2-compatibility-guide.md
@@ -0,0 +1,65 @@
+---
+type: docs
+title: "3.1 升级至 3.2 操作指南"
+linkTitle: "3.1 升级至 3.2 操作指南"
+weight: 1001
+description: "快速了解 Dubbo 3.2 的升级步骤与兼容性"
+---
+
+## 功能修改点
+
+### 1. 传递依赖变更
+
+* Dubbo 3.2.0 版本开始默认不再在 `dubbo-all` 中 shade `hessian-lite`
的代码,而是使用传递依赖传递。如果你的应用中不需要使用 `hessian-lite`,可以将 `hessian-lite` 从依赖中移除。
+* Dubbo 3.2.0 版本开始在 `dubbo-all` 中不再传递 `gson`、`fastjson` 依赖,如果你的应用中需要使用
`gson`、`fastjson`,请手动将 `gson`、`fastjson` 依赖添加到应用中。
+* Dubbo 3.2.0 版本在 `dubbo-all` 中传递 `fastjson2` 依赖。
+
+### 2. 默认序列化切换
+
+* Dubbo 3.2.0 版本开始默认序列化方式从 `hessian2` 切换为 `fastjson2`,对于升级到 3.2.0 的应用,Dubbo
会自动尝试采用 `fastjson2` 进行序列化。
+
+#### FAQ
+
+#### Q1:会不会影响和低版本的 Dubbo 互通?
+
+不会。与低版本互通仍使用
`hessian-lite`。原理可参考[序列化协议升级指南](/zh/docs3-v2/java-sdk/upgrades-and-compatibility/serialization-upgrade/)一文。
+
+#### Q2:为什么要切换默认序列化方式?
+
+`fastjson2` 是一款高性能的序列化框架,性能优于 `hessian2`,原生支持 JDK17、Native 等,以及完全向前兼容
`hessian2` 所有功能。
+由于 `hessian-lite` 在未来维护难度越来越大,我们决定将默认序列化方式从 `hessian2` 切换为 `fastjson2`。
+
+#### Q3:和原生的 JSON 是什么关系?
+
+Dubbo 中使用 `fastjson2` 的 JSONB 格式,而不是原生的 JSON 格式。JSONB
格式和JSON格式对应,能完全表示JSON,是一种二进制格式。
+具体协议格式可以参考:[JSONB
格式](https://github.com/alibaba/fastjson2/wiki/jsonb_format_cn)
+
+#### Q4:如果我不想使用 `fastjson2`,怎么办?
+
+如果你不想使用 `fastjson2`,可以配置 `prefer-serialization` 为 `hessian2` 覆盖默认配置。(如
`dubbo.provider.prefer-serialization=fastjson2,hessian2`) 如果没有特殊的需求,我们不建议仍继续使用
`hessian2`。
+
+### 3. 默认内部序列化工具切换
+
+* Dubbo 3.2.0 版本开始默认**内部**序列化工具从 `fastjson` 切换为 `fastjson2`。
+
+#### FAQ
+
+#### Q1:会不会影响 RPC 请求流量?
+
+不会。内部序列化工具为 Dubbo 内部解析参数时使用,非 RPC 传输序列化协议。
+
+#### Q2:为什么要切换默认内部序列化工具?
+
+Dubbo 3.2.0 版本开始默认传递依赖不再传递 `fastjson` 和 `gson`。出于兼容性考虑,默认内部序列化工具切换为
`fastjson2`。
+
+#### Q3:如果我的环境中没有 `fastjson2`,怎么办?
+
+Dubbo 支持多种序列化框架自动切换,如果你的环境中没有 `fastjson2`,Dubbo 会自动尝试切换到 `fastsjon` 或 `gson`。
+
+#### Q4:我想指定 Dubbo 内部序列化工具,怎么办?
+
+可以配置 `dubbo.json-framework.prefer` 参数,如 `-Ddubbo.json-framework.prefer=gson`。
+
+### 4. Triple 协议支持传递自定义异常
+
+* Dubbo 3.2.0 版本开始 Triple 协议支持回传自定义异常,而不是只能回传 `RpcException`。如果服务接口会抛出异常的,在
Dubbo 3.2.0 版本以后将默认按照 Dubbo 协议一样回传自定义异常对象。
\ No newline at end of file