You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by gi...@apache.org on 2023/01/28 03:14:11 UTC

[dubbo-website] branch cn-site updated: deploy: 08ec60d1584b85ec27d62833717002bbcfd3eb4c

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

github-bot pushed a commit to branch cn-site
in repository https://gitbox.apache.org/repos/asf/dubbo-website.git


The following commit(s) were added to refs/heads/cn-site by this push:
     new 083518fdf5 deploy: 08ec60d1584b85ec27d62833717002bbcfd3eb4c
083518fdf5 is described below

commit 083518fdf52cc3af8daa2c28a973fe43a8b25303
Author: AlbumenJ <Al...@users.noreply.github.com>
AuthorDate: Sat Jan 28 03:14:02 2023 +0000

    deploy: 08ec60d1584b85ec27d62833717002bbcfd3eb4c
---
 sitemap.xml                                        |  2 +-
 zh/docs/index.xml                                  | 96 ++++++++++++++++++++--
 zh/docs3-v2/java-sdk/faq/99/1/index.html           |  6 +-
 .../reference-manual/spi/description/index.xml     |  1 -
 .../spi/description/page/index.html                | 10 +--
 zh/sitemap.xml                                     |  2 +-
 6 files changed, 97 insertions(+), 20 deletions(-)

diff --git a/sitemap.xml b/sitemap.xml
index ed20276419..55d2d04e3b 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?><sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://cn.dubbo.apache.org/zh/sitemap.xml</loc><lastmod>2023-01-28T11:09:31+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-01-28T11:09:48+08:00</lastmod></sitemap></sitemapindex>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8" standalone="yes"?><sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-01-28T11:09:48+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/zh/sitemap.xml</loc><lastmod>2023-01-28T11:10:17+08:00</lastmod></sitemap></sitemapindex>
\ No newline at end of file
diff --git a/zh/docs/index.xml b/zh/docs/index.xml
index ddd44a9b58..b5e97d9183 100644
--- a/zh/docs/index.xml
+++ b/zh/docs/index.xml
@@ -179,14 +179,7 @@
 &lt;li>zk 能够正常启动或对外能够提供正常服务。&lt;/li>
 &lt;/ol>
 &lt;p>可通过一些第三方的工具或者&lt;code>jstack [PID] &amp;gt; jstack.log&lt;/code> 分析堆栈信息,进行定位。&lt;/p>
-&lt;p style="margin-top: 3rem;"> &lt;/p></description></item><item><title>Docs3-V2: 99-1 - 程序被打断</title><link>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/faq/99/1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/faq/99/1/</guid><description>
-&lt;p>Dubbo 内部的未知错误。&lt;/p>
-&lt;h3 id="可能的原因">可能的原因&lt;/h3>
-&lt;p>程序收到来自 JVM 层面的打断通知,被迫停止阻塞等待&lt;/p>
-&lt;h3 id="排查和解决步骤">排查和解决步骤&lt;/h3>
-&lt;p>此异常通常发生在线程池关闭或者应用关闭的过程中。
-请检查是否影响业务正常使用,如无影响可以忽略,如果有影响请参照对应的排查手册。
-更多的排查思路可以参考 &lt;a href="../0/">99-0&lt;/a> 一文。&lt;/p></description></item><item><title>Docsv2.7: Dubbo SPI</title><link>https://cn.dubbo.apache.org/zh/docsv2.7/dev/source/dubbo-spi/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/zh/docsv2.7/dev/source/dubbo-spi/</guid><description>
+&lt;p style="margin-top: 3rem;"> &lt;/p></description></item><item><title>Docsv2.7: Dubbo SPI</title><link>https://cn.dubbo.apache.org/zh/docsv2.7/dev/source/dubbo-spi/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/zh/docsv2.7/dev/source/dubbo-spi/</guid><description>
 &lt;h2 id="1简介">1.简介&lt;/h2>
 &lt;p>SPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的程序提供拓展功能。SPI 机制在第三方框架中也有所应用,比如 Dubbo 就是通过 SPI 机制加载所有的组件。不过,Dubbo 并未使用 Java 原生的 SPI 机制,而是对其进行了增强,使其能够更好的满足需求。在 Dubbo 中,SPI 是一个非常重要的模块。基于 SPI,我们可以很容易的对 Dubbo 进行拓展。如果大家想要学习 Dubbo 的源码,SPI 机制务必弄懂。接下来,我们先来了解一下 Java SPI 与 Dubbo SPI 的用法,然后再来分析 Dubbo SPI 的源码。&lt;/p>
 &lt;p>需要特别说明的是,本篇文章以及本系列其他文章所分析的源码版本均为 &lt;strong>dubbo-2.6.4&lt;/strong>。因此大家在阅读文章的过程中,需注意将代码版本切换到 dubbo-2.6.4 tag 上。&lt;/p>
@@ -6849,4 +6842,89 @@ Pixiu 的整体设计遵守以下原则:&lt;/p>
 &lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dubbo.application.qos-accept-foreign-ip=false
 &lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dubbo.application.qos-accept-foreign-ip-whitelist=123.12.10.13, 132.12.10.13/24
 &lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dubbo.application.qos-anonymous-access-permission-level=NONE
-&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item></channel></rss>
\ No newline at end of file
+&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Docs3-V2: RPC 协议 Triple&amp;Dubbo 基准测试</title><link>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/reference-manual/performance/rpc-benchmarking/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/reference-manual/performance/rpc-benchmarking/</guid><description>
+&lt;ul>
+&lt;li>Dubbo3 的 _Dubbo协议 _实现与 Dubbo2 版本在性能上基本持平。&lt;/li>
+&lt;li>由于 Triple协议 本身是基于 HTTP/2 构建,因此在单条链路上的 RPC 调用并未比基于 TCP 的 Dubbo2 有提升,反而在某些调用场景出现一定下降。但 _Triple协议 _更大的优势在于网关穿透性、通用性,以及 Stream 通信模型带来的总体吞吐量提升。&lt;/li>
+&lt;li>Triple 预期在网关代理场景下一定会有更好的性能表现,鉴于当前压测环境,本轮 benchmark 暂未提供。&lt;/li>
+&lt;/ul>
+&lt;h2 id="11-环境">1.1 环境&lt;/h2>
+&lt;table>
+&lt;thead>
+&lt;tr>
+&lt;th>&lt;/th>
+&lt;th>描述&lt;/th>
+&lt;/tr>
+&lt;/thead>
+&lt;tbody>
+&lt;tr>
+&lt;td>&lt;strong>机器&lt;/strong>&lt;/td>
+&lt;td>4C8G Linux JDK 1.8(Provider)4C8G Linux JDK 1.8 (Consumer)&lt;/td>
+&lt;/tr>
+&lt;tr>
+&lt;td>&lt;strong>压测用例&lt;/strong>&lt;/td>
+&lt;td>RPC 方法类型包括:无参无返回值、普通pojo返回值、pojo列表返回值&lt;br />&lt;br />2.7 版本 Dubbo 协议(Hessian2 序列化)&lt;br />3.0 版本 Dubbo 协议(Hessian2 序列化)&lt;br />3.0 版本 Dubbo 协议(Protobuf 序列化)&lt;br />3.0 版本 Triple 协议(Protobuf 序列化)&lt;br />3.0 版本 Triple 协议(Protobuf 套 Hessian2 序列化)&lt;/td>
+&lt;/tr>
+&lt;tr>
+&lt;td>&lt;strong>压测方法&lt;/strong>&lt;/td>
+&lt;td>单链接场景下,消费端起 32 并发线程(当前机器配置 qps rt 较均衡的并发数),持续压后采集压测数据&lt;br /> 压测数据通过 &lt;a href="https://github.com/apache/dubbo-benchmark">https://github.com/apache/dubbo-benchmark&lt;/a> 得出&lt;/td>
+&lt;/tr>
+&lt;/tbody>
+&lt;/table>
+&lt;br />
+&lt;h2 id="12-数据分析">1.2 数据分析&lt;/h2>
+&lt;table>
+&lt;thead>
+&lt;tr>
+&lt;th>&lt;/th>
+&lt;th>&lt;strong>Dubbo + Hessian2&lt;br />2.7&lt;/strong>&lt;/th>
+&lt;th>&lt;strong>Dubbo + Hessian2&lt;br />3.0&lt;/strong>&lt;/th>
+&lt;th>&lt;strong>Dubbo + Protobuf&lt;br />3.0&lt;/strong>&lt;/th>
+&lt;th>&lt;strong>Triple + Protobuf&lt;br />3.0&lt;/strong>&lt;/th>
+&lt;th>&lt;strong>Triple + Protobuf(Hessian)&lt;br />3.0&lt;/strong>&lt;/th>
+&lt;/tr>
+&lt;/thead>
+&lt;tbody>
+&lt;tr>
+&lt;td>&lt;strong>无参方法&lt;/strong>&lt;/td>
+&lt;td>30333 ops/s&lt;br />2.5ms P99&lt;/td>
+&lt;td>30414 ops/s&lt;br />2.4ms P99&lt;/td>
+&lt;td>24123 ops/s&lt;br />3.2ms P99&lt;/td>
+&lt;td>7016 ops/s&lt;br />8.7ms P99&lt;/td>
+&lt;td>6635 ops/s&lt;br />9.1ms P99&lt;/td>
+&lt;/tr>
+&lt;tr>
+&lt;td>&lt;strong>pojo返回值&lt;/strong>&lt;/td>
+&lt;td>8984 ops/s&lt;br />6.1 ms P99&lt;/td>
+&lt;td>12279 ops/s&lt;br />5.7 ms P99&lt;/td>
+&lt;td>21479 ops/s&lt;br />3.0 ms P99&lt;/td>
+&lt;td>6255 ops/s&lt;br />8.9 ms P99&lt;/td>
+&lt;td>6491 ops/s&lt;br />10 ms P99&lt;/td>
+&lt;/tr>
+&lt;tr>
+&lt;td>&lt;strong>pojo列表返回值&lt;/strong>&lt;/td>
+&lt;td>1916 ops/s&lt;br />34 ms P99&lt;/td>
+&lt;td>2037 ops/s&lt;br />34 ms P99&lt;/td>
+&lt;td>12722 ops/s&lt;br />7.7 ms P99&lt;/td>
+&lt;td>6920 ops/s&lt;br />9.6 ms P99&lt;/td>
+&lt;td>2833 ops/s&lt;br />27 ms P99&lt;/td>
+&lt;/tr>
+&lt;/tbody>
+&lt;/table>
+&lt;h3 id="121-dubbo-协议不同版本实现对比">1.2.1 Dubbo 协议不同版本实现对比&lt;/h3>
+&lt;p>&lt;img src="https://cn.dubbo.apache.org/imgs/v3/performance/rpc-dubbo.svg" alt="//imgs/v3/performance/rpc-dubbo.svg">&lt;/p>
+&lt;p>&lt;br />图三 Dubbo协议在不同版本的实现对比&lt;br />&lt;/p>
+&lt;ul>
+&lt;li>就 Dubbo RPC + Hessian 的默认组合来说,Dubbo3 与 Dubbo2 在性能上在不同调用场景下基本持平&lt;/li>
+&lt;/ul>
+&lt;h3 id="122-dubbo协议-vs-triple协议">1.2.2 Dubbo协议 vs Triple协议&lt;/h3>
+&lt;p>&lt;img src="https://cn.dubbo.apache.org/imgs/v3/performance/rpc-triple.svg" alt="//imgs/v3/performance/rpc-triple.svg">&lt;/p>
+&lt;p>&lt;br />图四 Triple vs Dubbo&lt;br />&lt;/p>
+&lt;ul>
+&lt;li>单纯看 Consumer &amp;lt;-&amp;gt; Provider 的点对点调用,可以看出 Triple 协议本身并不占优势,同样使用 Protobuf 序列化方式,Dubbo RPC 协议总体性能还是要优于 Triple。&lt;br />&lt;br />&lt;/li>
+&lt;li>Triple 实现在 3.0 版本中将会得到持续优化,但不能完全改变在某些场景下“基于 HTTP/2 的 RPC 协议”对比“基于 TCP 的 RPC 协议”处于劣势的局面&lt;/li>
+&lt;/ul>
+&lt;h3 id="123-补充网关场景">1.2.3 补充网关场景&lt;/h3>
+&lt;p>TBD&lt;br />&lt;br />&lt;/p>
+&lt;h3 id="124-模拟-stream-通信场景的吞吐量提升">1.2.4 模拟 Stream 通信场景的吞吐量提升&lt;/h3>
+&lt;p>TBD&lt;/p></description></item></channel></rss>
\ No newline at end of file
diff --git a/zh/docs3-v2/java-sdk/faq/99/1/index.html b/zh/docs3-v2/java-sdk/faq/99/1/index.html
index c3ba7f96e0..faf14670e8 100644
--- a/zh/docs3-v2/java-sdk/faq/99/1/index.html
+++ b/zh/docs3-v2/java-sdk/faq/99/1/index.html
@@ -1,8 +1,8 @@
 <!doctype html><html lang=zh class=no-js><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=generator content="Hugo 0.110.0"><meta name=ROBOTS content="INDEX, FOLLOW"><link rel="shortcut icon" href=/favicons/favicon.ico><link rel=apple-touch-icon href=/favicons/apple-touch-icon-180x180.png sizes=180x180><link rel=icon type=image/png href=/favicons/favicon-16x16.png sizes=16x16><link rel=icon type=image/png href=/favicons [...]
 可能的原因 程序收到来自 JVM 层面的打断通知,被迫停止阻塞等待
-排查和解决步骤 此异常通常发生在线程池关闭或者应用关闭的过程中。 请检查是否影响业务正常使用,如无影响可以忽略,如果有影响请参照对应的排查手册。 更多的排查思路可以参考 99-0 一文。"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/faq/99/1/"><meta property="article:section" content="docs3-v2"><meta property="article:modified_time" content="2023-01-03T15:09:00+08:00"><meta property="og:site_name" content="Apache Dubbo"><meta itemprop=name content="99-1 - 程序被打断"><meta itemprop=description content="Du [...]
+排查和解决步骤 此异常通常发生在线程池关闭或者应用关闭的过程中。 请检查是否影响业务正常使用,如无影响可以忽略,如果有影响请参照对应的排查手册。 更多的排查思路可以参考 99-0 一文。"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/faq/99/1/"><meta property="article:section" content="docs3-v2"><meta property="article:modified_time" content="2023-01-28T11:10:17+08:00"><meta property="og:site_name" content="Apache Dubbo"><meta itemprop=name content="99-1 - 程序被打断"><meta itemprop=description content="Du [...]
 可能的原因 程序收到来自 JVM 层面的打断通知,被迫停止阻塞等待
-排查和解决步骤 此异常通常发生在线程池关闭或者应用关闭的过程中。 请检查是否影响业务正常使用,如无影响可以忽略,如果有影响请参照对应的排查手册。 更多的排查思路可以参考 99-0 一文。"><meta itemprop=dateModified content="2023-01-03T15:09:00+08:00"><meta itemprop=wordCount content="12"><meta itemprop=keywords content><meta name=twitter:card content="summary"><meta name=twitter:title content="99-1 - 程序被打断"><meta name=twitter:description content="Dubbo 内部的未知错误。
+排查和解决步骤 此异常通常发生在线程池关闭或者应用关闭的过程中。 请检查是否影响业务正常使用,如无影响可以忽略,如果有影响请参照对应的排查手册。 更多的排查思路可以参考 99-0 一文。"><meta itemprop=dateModified content="2023-01-28T11:10:17+08:00"><meta itemprop=wordCount content="12"><meta itemprop=keywords content><meta name=twitter:card content="summary"><meta name=twitter:title content="99-1 - 程序被打断"><meta name=twitter:description content="Dubbo 内部的未知错误。
 可能的原因 程序收到来自 JVM 层面的打断通知,被迫停止阻塞等待
 排查和解决步骤 此异常通常发生在线程池关闭或者应用关闭的过程中。 请检查是否影响业务正常使用,如无影响可以忽略,如果有影响请参照对应的排查手册。 更多的排查思路可以参考 99-0 一文。"><script type=application/javascript>var doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-112489517-1","auto"),ga("send","pageview"))</script><script async src=https://www.google-analytics.com/analytics.js></script>
 <link rel=preload href=/scss/main.min.8637cb48af1c2672dbf22e4e83652c0cebe2d667477b88c8a046be155bcf7cfe.css as=style><link href=/scss/main.min.8637cb48af1c2672dbf22e4e83652c0cebe2d667477b88c8a046be155bcf7cfe.css rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin=anonymous></script>
@@ -12,7 +12,7 @@
 <a href=https://github.com/apache/dubbo/issues/new target=_blank><i class="fas fa-tasks fa-fw"></i> 提交项目问题</a></div><div class=td-toc><nav id=TableOfContents><ul><li><ul><li><a href=#可能的原因>可能的原因</a></li><li><a href=#排查和解决步骤>排查和解决步骤</a></li></ul></li></ul></nav></div></aside><main class="col-12 col-md-9 col-xl-8 pl-md-5" role=main><nav aria-label=breadcrumb class="d-none d-md-block d-print-none"><ol class="breadcrumb spb-1"><li class=breadcrumb-item><a href=https://cn.dubbo.apache.org/zh/ [...]
 请检查是否影响业务正常使用,如无影响可以忽略,如果有影响请参照对应的排查手册。
 更多的排查思路可以参考 <a href=../0/>99-0</a> 一文。</p><style>.feedback--answer{display:inline-block}.feedback--answer-no{margin-left:1em}.feedback--response{display:none;margin-top:1em}.feedback--response__visible{display:block}</style><div class=d-print-none><h2 class=feedback--title>Feedback</h2><p class=feedback--question>Was this page helpful?</p><button class="btn btn-primary mb-4 feedback--answer feedback--answer-yes">Yes</button>
-<button class="btn btn-primary mb-4 feedback--answer feedback--answer-no">No</button><p class="feedback--response feedback--response-yes">Glad to hear it! Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p><p class="feedback--response feedback--response-no">Sorry to hear that. Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p></div><script>const yesButton=document.querySelector(".feedback [...]
+<button class="btn btn-primary mb-4 feedback--answer feedback--answer-no">No</button><p class="feedback--response feedback--response-yes">Glad to hear it! Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p><p class="feedback--response feedback--response-no">Sorry to hear that. Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p></div><script>const yesButton=document.querySelector(".feedback [...]
 <script src=/js/bootstrap.min.js integrity=sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy crossorigin=anonymous></script>
 <script src=/js/main.min.67b5ab62cb078146d9ab8cea15d59ffc7645b89f33906c50ab421a4d5eca73e9.js integrity="sha256-Z7WrYssHgUbZq4zqFdWf/HZFuJ8zkGxQq0IaTV7Kc+k=" crossorigin=anonymous></script>
 <script src=https://cdn.jsdelivr.net/npm/@docsearch/js@3></script>
diff --git a/zh/docs3-v2/java-sdk/reference-manual/spi/description/index.xml b/zh/docs3-v2/java-sdk/reference-manual/spi/description/index.xml
index ed5aa03dc8..8b01d60e01 100644
--- a/zh/docs3-v2/java-sdk/reference-manual/spi/description/index.xml
+++ b/zh/docs3-v2/java-sdk/reference-manual/spi/description/index.xml
@@ -1334,7 +1334,6 @@
 &lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>META-INF/dubbo/org.apache.dubbo.remoting.exchange.Exchanger:&lt;/p>
 &lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-properties" data-lang="properties">&lt;span style="display:flex;">&lt;span>xxx&lt;span style="color:#719e07">=&lt;/span>&lt;span style="color:#2aa198">com.xxx.XxxExchanger&lt;/span>
 &lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Docs3-V2: 对等网络节点组网器扩展</title><link>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/</guid><description>
-&lt;h1 id="页面扩展">页面扩展&lt;/h1>
 &lt;h2 id="扩展说明">扩展说明&lt;/h2>
 &lt;p>对等网络节点组网器。&lt;/p>
 &lt;h2 id="扩展接口">扩展接口&lt;/h2>
diff --git a/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/index.html b/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/index.html
index aba529f6b5..f48eba3ccc 100644
--- a/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/index.html
+++ b/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/index.html
@@ -1,14 +1,14 @@
-<!doctype html><html lang=zh class=no-js><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=generator content="Hugo 0.110.0"><meta name=ROBOTS content="INDEX, FOLLOW"><link rel="shortcut icon" href=/favicons/favicon.ico><link rel=apple-touch-icon href=/favicons/apple-touch-icon-180x180.png sizes=180x180><link rel=icon type=image/png href=/favicons/favicon-16x16.png sizes=16x16><link rel=icon type=image/png href=/favicons [...]
+<!doctype html><html lang=zh class=no-js><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=generator content="Hugo 0.110.0"><meta name=ROBOTS content="INDEX, FOLLOW"><link rel="shortcut icon" href=/favicons/favicon.ico><link rel=apple-touch-icon href=/favicons/apple-touch-icon-180x180.png sizes=180x180><link rel=icon type=image/png href=/favicons/favicon-16x16.png sizes=16x16><link rel=icon type=image/png href=/favicons [...]
 扩展接口 org.apache.dubbo.container.page.PageHandler
 扩展配置 <dubbo:protocol page=&#34;xxx,yyy&#34; /> <!-- 缺省值设置,当<dubbo:protocol>没有配置page属性时,使用此配置 --> <dubbo:provider page=&#34;xxx,yyy&#34; /> 已知扩展 org.apache.dubbo.container.page.pages.HomePageHandler org.apache.dubbo.container.page.pages.StatusPageHandler org.apache.dubbo.container.page.pages.LogPageHandler org.apache.dubbo.container.page.pages.SystemPageHandler 扩展示例 Maven 项目结构:
 src |-main |-java |-com |-xxx |-XxxPageHandler.java (实现PageHandler接口) |-resources |-META-INF |-dubbo |-org.apache.dubbo.container.page.PageHandler (纯文本文件,内容为:xxx=com.xxx.XxxPageHandler) XxxPageHandler.java:
 package com.xxx; import org.apache.dubbo.container.page.PageHandler; public class XxxPageHandler implements PageHandler { public Group lookup(URL url) { // ... } } META-INF/dubbo/org.apache.dubbo.container.page.PageHandler:
-xxx=com.xxx.XxxPageHandler "><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/"><meta property="article:section" content="docs3-v2"><meta property="article:modified_time" content="2022-07-24T12:31:11+08:00"><meta property="og:site_name" content="Apache Dubbo"><meta itemprop=name content="对等网络节点组网器扩展"><meta itemprop=description content="页面扩展 扩展说明 对等网络节点组网器。
+xxx=com.xxx.XxxPageHandler "><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/reference-manual/spi/description/page/"><meta property="article:section" content="docs3-v2"><meta property="article:modified_time" content="2023-01-28T11:10:00+08:00"><meta property="og:site_name" content="Apache Dubbo"><meta itemprop=name content="对等网络节点组网器扩展"><meta itemprop=description content="扩展说明 对等网络节点组网器。
 扩展接口 org.apache.dubbo.container.page.PageHandler
 扩展配置 <dubbo:protocol page=&#34;xxx,yyy&#34; /> <!-- 缺省值设置,当<dubbo:protocol>没有配置page属性时,使用此配置 --> <dubbo:provider page=&#34;xxx,yyy&#34; /> 已知扩展 org.apache.dubbo.container.page.pages.HomePageHandler org.apache.dubbo.container.page.pages.StatusPageHandler org.apache.dubbo.container.page.pages.LogPageHandler org.apache.dubbo.container.page.pages.SystemPageHandler 扩展示例 Maven 项目结构:
 src |-main |-java |-com |-xxx |-XxxPageHandler.java (实现PageHandler接口) |-resources |-META-INF |-dubbo |-org.apache.dubbo.container.page.PageHandler (纯文本文件,内容为:xxx=com.xxx.XxxPageHandler) XxxPageHandler.java:
 package com.xxx; import org.apache.dubbo.container.page.PageHandler; public class XxxPageHandler implements PageHandler { public Group lookup(URL url) { // ... } } META-INF/dubbo/org.apache.dubbo.container.page.PageHandler:
-xxx=com.xxx.XxxPageHandler "><meta itemprop=dateModified content="2022-07-24T12:31:11+08:00"><meta itemprop=wordCount content="57"><meta itemprop=keywords content><meta name=twitter:card content="summary"><meta name=twitter:title content="对等网络节点组网器扩展"><meta name=twitter:description content="页面扩展 扩展说明 对等网络节点组网器。
+xxx=com.xxx.XxxPageHandler "><meta itemprop=dateModified content="2023-01-28T11:10:00+08:00"><meta itemprop=wordCount content="56"><meta itemprop=keywords content><meta name=twitter:card content="summary"><meta name=twitter:title content="对等网络节点组网器扩展"><meta name=twitter:description content="扩展说明 对等网络节点组网器。
 扩展接口 org.apache.dubbo.container.page.PageHandler
 扩展配置 <dubbo:protocol page=&#34;xxx,yyy&#34; /> <!-- 缺省值设置,当<dubbo:protocol>没有配置page属性时,使用此配置 --> <dubbo:provider page=&#34;xxx,yyy&#34; /> 已知扩展 org.apache.dubbo.container.page.pages.HomePageHandler org.apache.dubbo.container.page.pages.StatusPageHandler org.apache.dubbo.container.page.pages.LogPageHandler org.apache.dubbo.container.page.pages.SystemPageHandler 扩展示例 Maven 项目结构:
 src |-main |-java |-com |-xxx |-XxxPageHandler.java (实现PageHandler接口) |-resources |-META-INF |-dubbo |-org.apache.dubbo.container.page.PageHandler (纯文本文件,内容为:xxx=com.xxx.XxxPageHandler) XxxPageHandler.java:
@@ -18,7 +18,7 @@ xxx=com.xxx.XxxPageHandler "><script type=application/javascript>var doNotTrack=
 <link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3></head><body class=td-page><header><nav class="js-navbar-scroll navbar navbar-expand navbar-dark flex-column flex-md-row td-navbar"><a class=navbar-brand href=/zh/><span class=navbar-logo><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 321.39 78.54"><title id="title19">DUBBO LOGO</title><path class="cls-1" d="M68.46 50.38c0 14.06 11.39 22.11 25.45 22.11s25.45-8.05 25.45-22.11V7.25H68.46zm21.24-28h8.6V31H89.7zm0  [...]
 <a href="https://github.com/apache/dubbo-website/new/master/content/zh/docs3-v2/java-sdk/reference-manual/spi/description/page.md?filename=change-me.md&value=---%0Atitle%3A+%22Long+Page+Title%22%0AlinkTitle%3A+%22Short+Nav+Title%22%0Aweight%3A+100%0Adescription%3A+%3E-%0A+++++Page+description+for+heading+and+indexes.%0A---%0A%0A%23%23+Heading%0A%0AEdit+this+template+to+create+your+new+page.%0A%0A%2A+Give+it+a+good+name%2C+ending+in+%60.md%60+-+e.g.+%60getting-started.md%60%0A%2A+Edit+the [...]
 <a href="https://github.com/apache/dubbo-website/issues/new?title=%e5%af%b9%e7%ad%89%e7%bd%91%e7%bb%9c%e8%8a%82%e7%82%b9%e7%bb%84%e7%bd%91%e5%99%a8%e6%89%a9%e5%b1%95" target=_blank><i class="fab fa-github fa-fw"></i> 提交文档问题</a>
-<a href=https://github.com/apache/dubbo/issues/new target=_blank><i class="fas fa-tasks fa-fw"></i> 提交项目问题</a></div><div class=td-toc><nav id=TableOfContents><ul><li><a href=#扩展说明>扩展说明</a></li><li><a href=#扩展接口>扩展接口</a></li><li><a href=#扩展配置>扩展配置</a></li><li><a href=#已知扩展>已知扩展</a></li><li><a href=#扩展示例>扩展示例</a></li></ul></nav></div></aside><main class="col-12 col-md-9 col-xl-8 pl-md-5" role=main><nav aria-label=breadcrumb class="d-none d-md-block d-print-none"><ol class="breadcrumb spb-1 [...]
+<a href=https://github.com/apache/dubbo/issues/new target=_blank><i class="fas fa-tasks fa-fw"></i> 提交项目问题</a></div><div class=td-toc><nav id=TableOfContents><ul><li><a href=#扩展说明>扩展说明</a></li><li><a href=#扩展接口>扩展接口</a></li><li><a href=#扩展配置>扩展配置</a></li><li><a href=#已知扩展>已知扩展</a></li><li><a href=#扩展示例>扩展示例</a></li></ul></nav></div></aside><main class="col-12 col-md-9 col-xl-8 pl-md-5" role=main><nav aria-label=breadcrumb class="d-none d-md-block d-print-none"><ol class="breadcrumb spb-1 [...]
 </span></span><span style=display:flex><span><span style=color:#586e75>&lt;!-- 缺省值设置,当&lt;dubbo:protocol&gt;没有配置page属性时,使用此配置 --&gt;</span>
 </span></span><span style=display:flex><span><span style=color:#268bd2>&lt;dubbo:provider</span> page=<span style=color:#2aa198>&#34;xxx,yyy&#34;</span> <span style=color:#268bd2>/&gt;</span>
 </span></span></code></pre></div><h2 id=已知扩展>已知扩展</h2><ul><li><code>org.apache.dubbo.container.page.pages.HomePageHandler</code></li><li><code>org.apache.dubbo.container.page.pages.StatusPageHandler</code></li><li><code>org.apache.dubbo.container.page.pages.LogPageHandler</code></li><li><code>org.apache.dubbo.container.page.pages.SystemPageHandler</code></li></ul><h2 id=扩展示例>扩展示例</h2><p>Maven 项目结构:</p><div class=highlight><pre tabindex=0 style=color:#93a1a1;background-color:#002b36;-moz- [...]
@@ -42,7 +42,7 @@ xxx=com.xxx.XxxPageHandler "><script type=application/javascript>var doNotTrack=
 </span></span><span style=display:flex><span><span style=color:#719e07>}</span>
 </span></span></code></pre></div><p>META-INF/dubbo/org.apache.dubbo.container.page.PageHandler:</p><div class=highlight><pre tabindex=0 style=color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-properties data-lang=properties><span style=display:flex><span>xxx<span style=color:#719e07>=</span><span style=color:#2aa198>com.xxx.XxxPageHandler</span>
 </span></span></code></pre></div><style>.feedback--answer{display:inline-block}.feedback--answer-no{margin-left:1em}.feedback--response{display:none;margin-top:1em}.feedback--response__visible{display:block}</style><div class=d-print-none><h2 class=feedback--title>Feedback</h2><p class=feedback--question>Was this page helpful?</p><button class="btn btn-primary mb-4 feedback--answer feedback--answer-yes">Yes</button>
-<button class="btn btn-primary mb-4 feedback--answer feedback--answer-no">No</button><p class="feedback--response feedback--response-yes">Glad to hear it! Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p><p class="feedback--response feedback--response-no">Sorry to hear that. Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p></div><script>const yesButton=document.querySelector(".feedback [...]
+<button class="btn btn-primary mb-4 feedback--answer feedback--answer-no">No</button><p class="feedback--response feedback--response-yes">Glad to hear it! Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p><p class="feedback--response feedback--response-no">Sorry to hear that. Please <a href=https://github.com/apache/dubbo-website/issues/new>tell us how we can improve</a>.</p></div><script>const yesButton=document.querySelector(".feedback [...]
 <script src=/js/bootstrap.min.js integrity=sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy crossorigin=anonymous></script>
 <script src=/js/main.min.67b5ab62cb078146d9ab8cea15d59ffc7645b89f33906c50ab421a4d5eca73e9.js integrity="sha256-Z7WrYssHgUbZq4zqFdWf/HZFuJ8zkGxQq0IaTV7Kc+k=" crossorigin=anonymous></script>
 <script src=https://cdn.jsdelivr.net/npm/@docsearch/js@3></script>
diff --git a/zh/sitemap.xml b/zh/sitemap.xml
index 81370f6ed3..9a23e54ac0 100644
--- a/zh/sitemap.xml
+++ b/zh/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/faq/0/</loc><lastmod>2022-08-01T10:49:31+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority><xhtml:link rel="alternate" hreflang="en" href="https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/faq/0/"/><xhtml:link rel="alternate" hreflang="zh" href="https://c [...]
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://cn.dubbo.apache.org/zh/docs3-v2/java-sdk/faq/0/</loc><lastmod>2022-08-01T10:49:31+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority><xhtml:link rel="alternate" hreflang="en" href="https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/faq/0/"/><xhtml:link rel="alternate" hreflang="zh" href="https://c [...]
\ No newline at end of file