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 4320817252 deploy: d0d477e5c5e334b1c17e49a735aaf7bbcccabdea
4320817252 is described below
commit 4320817252162aacd33720933b20b0cf374b28e3
Author: AlbumenJ <[email protected]>
AuthorDate: Sun Jun 18 05:43:58 2023 +0000
deploy: d0d477e5c5e334b1c17e49a735aaf7bbcccabdea
---
sitemap.xml | 2 +-
.../mannual/java-sdk/reference-manual/protocol/http/index.html | 6 +++---
.../overview/mannual/java-sdk/reference-manual/protocol/index.xml | 7 +++++--
.../mannual/java-sdk/reference-manual/protocol/rest/index.html | 6 +++---
.../mannual/java-sdk/reference-manual/protocol/triple/index.xml | 8 +++-----
.../reference-manual/protocol/triple/streaming/index.html | 6 +++---
zh-cn/sitemap.xml | 2 +-
7 files changed, 19 insertions(+), 18 deletions(-)
diff --git a/sitemap.xml b/sitemap.xml
index 76a80e6123..6e23f1022f 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-cn/sitemap.xml</loc><lastmod>2023-06-18T13:38:36+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-05-10T11:59:30+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/zh-cn/sitemap.xml</loc><lastmod>2023-06-18T13:39:08+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-05-10T11:59:30+08:00</lastmod></sitemap></sitemapindex>
\ No newline at end of file
diff --git
a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/index.html
b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/index.html
index 046f6b99e2..bb0c7a056b 100644
--- a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/index.html
+++ b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport content= [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport content= [...]
<script>var
doNotTrack=!1;if(!doNotTrack){window.dataLayer=window.dataLayer||[];function
gtag(){dataLayer.push(arguments)}gtag("js",new
Date),gtag("config","G-NM6FFMT51J",{anonymize_ip:!1})}</script><link
rel=preload
href=/scss/main.min.827bbd3e83b1e0c66a1c08738c713f88f8068e84600146c2dbf9035f0f496f01.css
as=style><link
href=/scss/main.min.827bbd3e83b1e0c66a1c08738c713f88f8068e84600146c2dbf9035f0f496f01.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/a [...]
<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="HTTP协议"><meta
property="og:description" content="HTTP协议"><meta name=twitter:description
content="HTTP协议"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/"><meta
property="og:title" content="HTTP协议"><meta name=twitter:titl [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><link href=/css/language.css rel=stylesheet><script
src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div class="
[...]
@@ -687,8 +687,8 @@
</span></span><span style=display:flex><span> <span
style=color:#268bd2><servlet-name></span>dubbo<span
style=color:#268bd2></servlet-name></span>
</span></span><span style=display:flex><span> <span
style=color:#268bd2><url-pattern></span>/*<span
style=color:#268bd2></url-pattern></span>
</span></span><span style=display:flex><span><span
style=color:#268bd2></servlet-mapping></span>
-</span></span></code></pre></div><blockquote><p>如果使用 servlet
派发请求</p><ul><li>协议的端口 <code><dubbo:protocol port="8080" /></code> 必须与
servlet 容器的端口相同,</li><li>协议的上下文路径 <code><dubbo:protocol contextpath="foo"
/></code> 必须与 servlet 应用的上下文路径相同。</li></ul></blockquote><div
id=pre-footer><h2>反馈</h2><p class=feedback--prompt>此页是否对您有帮助?</p><button
class="btn btn-primary mb-4 feedback--yes">是</button>
-<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
+</span></span></code></pre></div><div class="alert alert-primary"
role=alert><h4 class=alert-heading>注意</h4><p>如果使用 servlet 派发请求</p><ul><li>协议的端口
<code><dubbo:protocol port="8080" /></code> 必须与 servlet
容器的端口相同,</li><li>协议的上下文路径 <code><dubbo:protocol contextpath="foo" /></code>
必须与 servlet 应用的上下文路径相同。</li></ul></div><div id=pre-footer><h2>反馈</h2><p
class=feedback--prompt>此页是否对您有帮助?</p><button class="btn btn-primary mb-4
feedback--yes">是</button>
+<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
<a
href="https://github.com/apache/dubbo-website/new/master/content/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http.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+
[...]
<a
href="https://github.com/apache/dubbo-website/issues/new?title=HTTP%e5%8d%8f%e8%ae%ae"
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></main><div class="d-none d-xl-block
col-xl-2 td-toc d-print-none"><nav id=TableOfContents><ul><li><a
href=#特性说明>特性说明</a><ul><li></li></ul></li><li><a href=#使用场景>使用场景</a></li><li><a
href=#使用方式>使用方式</a><ul><li><a href=#配置协议>配置协议</a></li><li><a
href=#配置-jetty-server-默认>配置 Jetty Server (默认)</a></li><li><a
href=#配置-servlet-bridge-server-推荐使用>配置 Servlet Bridge Server (推荐使用)</a>< [...]
diff --git
a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/index.xml
b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/index.xml
index ed74c46228..e126f600f5 100644
--- a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/index.xml
+++ b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/index.xml
@@ -333,6 +333,7 @@ Interface 方式。</p>
<p>此协议提供通过 web 访问服务的简单方式,将服务与其他基于 web 的应用程序集成。
支持 JSON、XML 和 Text 格式的请求和响应,发布和使用服务的便捷方式,也提供了服务版本控制、服务过滤、服务元数据和服务参数, 实现 Dubbo
框架的灵活性和可伸缩性。</p>
<h2 id="使用场景">使用场景</h2>
+<p>将 Dubbo 服务公开为 RESTful API,与微服务和现有 RESTful 系统集成,实现与非 Java
客户端的互操作性,并促进混合通信。</p>
<h2 id="使用方式">使用方式</h2>
<h3 id="快速入门">快速入门</h3>
<p>在 dubbo 中开发一个 REST 风格的服务会比较简单,下面以一个注册用户的简单服务为例说明。</p>
@@ -839,13 +840,15 @@ Interface 方式。</p>
</span></span><span style="display:flex;"><span> <span
style="color:#268bd2">&lt;servlet-name&gt;</span>dubbo<span
style="color:#268bd2">&lt;/servlet-name&gt;</span>
</span></span><span style="display:flex;"><span> <span
style="color:#268bd2">&lt;url-pattern&gt;</span>/*<span
style="color:#268bd2">&lt;/url-pattern&gt;</span>
</span></span><span style="display:flex;"><span><span
style="color:#268bd2">&lt;/servlet-mapping&gt;</span>
-</span></span></code></pre></div><blockquote>
+</span></span></code></pre></div>
+<div class="alert alert-primary" role="alert">
+<h4 class="alert-heading">注意</h4>
<p>如果使用 servlet 派发请求</p>
<ul>
<li>协议的端口 <code>&lt;dubbo:protocol port=&quot;8080&quot;
/&gt;</code> 必须与 servlet 容器的端口相同,</li>
<li>协议的上下文路径 <code>&lt;dubbo:protocol
contextpath=&quot;foo&quot; /&gt;</code> 必须与 servlet
应用的上下文路径相同。</li>
</ul>
-</blockquote></description></item><item><title>Overview: Rest
协议</title><link>https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/v3.2_rest_protocol_design/</link><pubDate>Mon,
01 Jan 0001 00:00:00
+0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/v3.2_rest_protocol_design/</guid><description>
+</div></description></item><item><title>Overview: Rest
协议</title><link>https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/v3.2_rest_protocol_design/</link><pubDate>Mon,
01 Jan 0001 00:00:00
+0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/v3.2_rest_protocol_design/</guid><description>
<h1 id="dubborestprotocol设计文档">Dubbo RestProtocol 设计文档</h1>
<h2 id="原版本dubborest">原版本dubbo rest</h2>
<p>consumer</p>
diff --git
a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest/index.html
b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest/index.html
index fff74e3bbc..fde44f280f 100644
--- a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest/index.html
+++ b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport content= [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport content= [...]
<script>var
doNotTrack=!1;if(!doNotTrack){window.dataLayer=window.dataLayer||[];function
gtag(){dataLayer.push(arguments)}gtag("js",new
Date),gtag("config","G-NM6FFMT51J",{anonymize_ip:!1})}</script><link
rel=preload
href=/scss/main.min.827bbd3e83b1e0c66a1c08738c713f88f8068e84600146c2dbf9035f0f496f01.css
as=style><link
href=/scss/main.min.827bbd3e83b1e0c66a1c08738c713f88f8068e84600146c2dbf9035f0f496f01.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/a [...]
<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Rest协议"><meta
property="og:description" content="Rest协议"><meta name=twitter:description
content="Rest协议"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest/"><meta
property="og:title" content="Rest协议"><meta name=twitter:titl [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><link href=/css/language.css rel=stylesheet><script
src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div class="
[...]
@@ -671,7 +671,7 @@
<label for=m-zh-cnoverviewreferenceprotocolstriple-check><a
href=/zh-cn/overview/reference/protocols/triple/ title="Triple 协议设计理念与规范"
class="align-left pl-0 td-sidebar-link td-sidebar-link__page"
id=m-zh-cnoverviewreferenceprotocolstriple><span>Triple
协议规范</span></a></label></li><li class="td-sidebar-nav__section-title
td-sidebar-nav__section without-child"
id=m-zh-cnoverviewreferenceprotocolstcp-li><input type=checkbox
id=m-zh-cnoverviewreferenceprotocolstcp-check>
<label for=m-zh-cnoverviewreferenceprotocolstcp-check><a
href=/zh-cn/overview/reference/protocols/tcp/ class="align-left pl-0
td-sidebar-link td-sidebar-link__page"
id=m-zh-cnoverviewreferenceprotocolstcp><span>Dubbo2
协议规范</span></a></label></li><li class="td-sidebar-nav__section-title
td-sidebar-nav__section without-child"
id=m-zh-cnoverviewreferenceprotocolshttp-li><input type=checkbox
id=m-zh-cnoverviewreferenceprotocolshttp-check>
<label for=m-zh-cnoverviewreferenceprotocolshttp-check><a
href=/zh-cn/overview/reference/protocols/http/ class="align-left pl-0
td-sidebar-link td-sidebar-link__page"
id=m-zh-cnoverviewreferenceprotocolshttp><span>HTTP
协议规范</span></a></label></li></ul></li></ul></li></ul></li></ul></nav></div></div><main
class="col-12 col-md-9 col-xl-8 pl-md-5" role=main><nav aria-label=breadcrumb
class=td-breadcrumbs><ol class=breadcrumb><li class=breadcrumb-item><a
href=https://cn.dubbo.apache.org/zh-c [...]
-支持 JSON、XML 和 Text 格式的请求和响应,发布和使用服务的便捷方式,也提供了服务版本控制、服务过滤、服务元数据和服务参数, 实现 Dubbo
框架的灵活性和可伸缩性。</p><h2 id=使用场景>使用场景</h2><h2 id=使用方式>使用方式</h2><h3
id=快速入门>快速入门</h3><p>在 dubbo 中开发一个 REST
风格的服务会比较简单,下面以一个注册用户的简单服务为例说明。</p><p>这个服务要实现的功能是提供如下 URL(注:这个URL不是完全符合 REST
的风格,但是更简单实用)</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-fallback data-lang=fallback><span
style=display:flex><span>http://localhost:8 [...]
+支持 JSON、XML 和 Text 格式的请求和响应,发布和使用服务的便捷方式,也提供了服务版本控制、服务过滤、服务元数据和服务参数, 实现 Dubbo
框架的灵活性和可伸缩性。</p><h2 id=使用场景>使用场景</h2><p>将 Dubbo 服务公开为 RESTful API,与微服务和现有
RESTful 系统集成,实现与非 Java 客户端的互操作性,并促进混合通信。</p><h2 id=使用方式>使用方式</h2><h3
id=快速入门>快速入门</h3><p>在 dubbo 中开发一个 REST
风格的服务会比较简单,下面以一个注册用户的简单服务为例说明。</p><p>这个服务要实现的功能是提供如下 URL(注:这个URL不是完全符合 REST
的风格,但是更简单实用)</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=langu [...]
</span></span></code></pre></div><p>而任何客户端都可以将包含用户信息的 JSON 字符串 POST 到以上 URL
来完成用户注册。</p><p>首先,开发服务的接口</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-java data-lang=java><span style=display:flex><span><span
style=color:#268bd2>public</span> <span style=color:#268bd2>class</span> <span
style=color:#268bd2>UserService</span> <span style=color:#719e07>{</span>
</span></span><span style=display:flex><span> <span
style=color:#dc322f>void</span> <span
style=color:#268bd2>registerUser</span><span style=color:#719e07>(</span>User
user<span style=color:#719e07>);</span>
</span></span><span style=display:flex><span><span style=color:#719e07>}</span>
@@ -950,7 +950,7 @@
</span></span><span style=display:flex><span><span style=color:#719e07>}</span>
</span></span></code></pre></div><p>然后将这个 ExceptionMapper 添加到 XML
配置中即可:</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-xml data-lang=xml><span style=display:flex><span><span
style=color:#268bd2><dubbo:protocol</span> name=<span
style=color:#2aa198>"rest"</span> port=<span
style=color:#2aa198>"8888"</span> extension=<span
style=color:#2aa198>"xxx.MyValidationExceptio [...]
</span></span></code></pre></div><div id=pre-footer><h2>反馈</h2><p
class=feedback--prompt>此页是否对您有帮助?</p><button class="btn btn-primary mb-4
feedback--yes">是</button>
-<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
+<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
<a
href="https://github.com/apache/dubbo-website/new/master/content/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/rest.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+
[...]
<a
href="https://github.com/apache/dubbo-website/issues/new?title=Rest%e5%8d%8f%e8%ae%ae"
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></main><div class="d-none d-xl-block
col-xl-2 td-toc d-print-none"><nav id=TableOfContents><ul><li><a
href=#特性说明>特性说明</a></li><li><a href=#使用场景>使用场景</a></li><li><a
href=#使用方式>使用方式</a><ul><li><a href=#快速入门>快速入门</a></li><li><a
href=#rest-服务提供端>REST 服务提供端</a></li><li><a href=#http-postget-的实现>HTTP POST/GET
的实现</a></li><li><a href=#annotation>Annotation</a></li><li><a href=#多数据 [...]
diff --git
a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/index.xml
b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/index.xml
index dc31945e4b..bd625f16b9 100644
--- a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/index.xml
+++ b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/index.xml
@@ -753,20 +753,18 @@
<li>BIDIRECTIONAL_STREAM(双向流)
<img
src="https://cn.dubbo.apache.org/imgs/v3/migration/tri/migrate-bi-stream.png"
alt="BIDIRECTIONAL_STREAM"></li>
</ul>
-<blockquote>
<p>由于 <code>java</code> 语言的限制,BIDIRECTIONAL_STREAM 和 CLIENT_STREAM
的实现是一样的。</p>
-</blockquote>
<p>在 Dubbo3 中,流式接口以 <code>SteamObserver</code>
声明和使用,用户可以通过使用和实现这个接口来发送和处理流的数据、异常和结束。</p>
-<blockquote>
<p>对于 Dubbo2 用户来说,可能会对StreamObserver感到陌生,这是Dubbo3定义的一种流类型,Dubbo2 中并不存在
Stream 的类型,所以对于迁移场景没有任何影响。</p>
-</blockquote>
-<p>流的语义保证</p>
+<div class="alert alert-primary" role="alert">
+<h4 class="alert-heading">流的语义保证</h4>
<ul>
<li>提供消息边界,可以方便地对消息单独处理</li>
<li>严格有序,发送端的顺序和接收端顺序一致</li>
<li>全双工,发送不需要等待</li>
<li>支持取消和超时</li>
</ul>
+</div>
<h3 id="protobuf-序列化的流">Protobuf 序列化的流</h3>
<p>对于 <code>Protobuf</code> 序列化方式,推荐编写 <code>IDL</code> 使用
<code>compiler</code> 插件进行编译生成。生成的代码大致如下:</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-java" data-lang="java"><span
style="display:flex;"><span><span style="color:#268bd2">public</span>
<span style="color:#268bd2">interface</span> <span
style="color:#268bd2">PbGreeter</span> <span
style="color:#719e07">{</span>
diff --git
a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming/index.html
b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming/index.html
index 23bf6e9c36..590f063374 100644
---
a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming/index.html
+++
b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewp [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewp [...]
<script>var
doNotTrack=!1;if(!doNotTrack){window.dataLayer=window.dataLayer||[];function
gtag(){dataLayer.push(arguments)}gtag("js",new
Date),gtag("config","G-NM6FFMT51J",{anonymize_ip:!1})}</script><link
rel=preload
href=/scss/main.min.827bbd3e83b1e0c66a1c08738c713f88f8068e84600146c2dbf9035f0f496f01.css
as=style><link
href=/scss/main.min.827bbd3e83b1e0c66a1c08738c713f88f8068e84600146c2dbf9035f0f496f01.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/a [...]
<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Streaming
通信"><meta property="og:description" content="Streaming 通信"><meta
name=twitter:description content="Streaming 通信"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming/"><meta
property="og:title" content="S [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><link href=/css/language.css rel=stylesheet><script
src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div class="
[...]
@@ -673,7 +673,7 @@
<label for=m-zh-cnoverviewreferenceprotocolshttp-check><a
href=/zh-cn/overview/reference/protocols/http/ class="align-left pl-0
td-sidebar-link td-sidebar-link__page"
id=m-zh-cnoverviewreferenceprotocolshttp><span>HTTP
协议规范</span></a></label></li></ul></li></ul></li></ul></li></ul></nav></div></div><main
class="col-12 col-md-9 col-xl-8 pl-md-5" role=main><nav aria-label=breadcrumb
class=td-breadcrumbs><ol class=breadcrumb><li class=breadcrumb-item><a
href=https://cn.dubbo.apache.org/zh-c [...]
<img src=/imgs/v3/migration/tri/migrate-server-stream.png
alt=SERVER_STREAM></li><li>CLIENT_STREAM(客户端流)
<img src=/imgs/v3/migration/tri/migrate-client-stream.png
alt=CLIENT_STREAM></li><li>BIDIRECTIONAL_STREAM(双向流)
-<img src=/imgs/v3/migration/tri/migrate-bi-stream.png
alt=BIDIRECTIONAL_STREAM></li></ul><blockquote><p>由于 <code>java</code>
语言的限制,BIDIRECTIONAL_STREAM 和 CLIENT_STREAM 的实现是一样的。</p></blockquote><p>在 Dubbo3
中,流式接口以 <code>SteamObserver</code>
声明和使用,用户可以通过使用和实现这个接口来发送和处理流的数据、异常和结束。</p><blockquote><p>对于 Dubbo2
用户来说,可能会对StreamObserver感到陌生,这是Dubbo3定义的一种流类型,Dubbo2 中并不存在 Stream
的类型,所以对于迁移场景没有任何影响。</p></blockquote><p>流的语义保证</p><ul><li>提供消息边界,可以方便地对消息单独处理</li><li>严格有序,发送端的顺序和接收端顺序一致</li><li>全双工,发送不
[...]
+<img src=/imgs/v3/migration/tri/migrate-bi-stream.png
alt=BIDIRECTIONAL_STREAM></li></ul><p>由于 <code>java</code>
语言的限制,BIDIRECTIONAL_STREAM 和 CLIENT_STREAM 的实现是一样的。</p><p>在 Dubbo3 中,流式接口以
<code>SteamObserver</code> 声明和使用,用户可以通过使用和实现这个接口来发送和处理流的数据、异常和结束。</p><p>对于
Dubbo2 用户来说,可能会对StreamObserver感到陌生,这是Dubbo3定义的一种流类型,Dubbo2 中并不存在 Stream
的类型,所以对于迁移场景没有任何影响。</p><div class="alert alert-primary" role=alert><h4
class=alert-heading>流的语义保证</h4><ul><li>提供消息边界,可以方便地对消息单独处理</li><li>严格有序,发送端的顺序和接收端顺序一致
[...]
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span> <span
style=color:#268bd2>static</span> <span style=color:#268bd2>final</span> String
JAVA_SERVICE_NAME <span style=color:#719e07>=</span> <span
style=color:#2aa198>"org.apache.dubbo.sample.tri.PbGreeter"</span><span
style=color:#719e07>;</span>
</span></span><span style=display:flex><span> <span
style=color:#268bd2>static</span> <span style=color:#268bd2>final</span> String
SERVICE_NAME <span style=color:#719e07>=</span> <span
style=color:#2aa198>"org.apache.dubbo.sample.tri.PbGreeter"</span><span
style=color:#719e07>;</span>
@@ -766,7 +766,7 @@
</span></span><span style=display:flex><span><span style=color:#719e07>}</span>
</span></span><span style=display:flex><span>request<span
style=color:#719e07>.</span>onCompleted<span style=color:#719e07>();</span>
</span></span></code></pre></div><div id=pre-footer><h2>反馈</h2><p
class=feedback--prompt>此页是否对您有帮助?</p><button class="btn btn-primary mb-4
feedback--yes">是</button>
-<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
+<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
<a
href="https://github.com/apache/dubbo-website/new/master/content/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/triple/streaming.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.
[...]
<a
href="https://github.com/apache/dubbo-website/issues/new?title=Streaming%20%e9%80%9a%e4%bf%a1"
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></main><div class="d-none d-xl-block
col-xl-2 td-toc d-print-none"><nav id=TableOfContents><ul><li><a
href=#流实现原理>流实现原理</a></li><li><a href=#流使用方式>流使用方式</a><ul><li><a
href=#stream-流>Stream 流</a></li><li><a href=#protobuf-序列化的流>Protobuf
序列化的流</a></li></ul></li><li><a href=#非-protobuf-序列化的流>非 Protobuf
序列化的流</a><ul><li><a href=#api>api</a></li><li><a href=#实现类>实现类</a></li><li>
[...]
diff --git a/zh-cn/sitemap.xml b/zh-cn/sitemap.xml
index 011a7e77df..0fa8523b96 100644
--- a/zh-cn/sitemap.xml
+++ b/zh-cn/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-cn/blog/2023/01/16/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4%E5%8D%87%E7%BA%A7-dubbo3-%E5%85%A8%E9%9D%A2%E5%8F%96%E4%BB%A3-hsf2/</loc><lastmod>2023-02-22T15:03:22+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>https://cn.dubbo.apache.org/zh-cn/overview/mannu
[...]
\ 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-cn/blog/2023/01/16/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4%E5%8D%87%E7%BA%A7-dubbo3-%E5%85%A8%E9%9D%A2%E5%8F%96%E4%BB%A3-hsf2/</loc><lastmod>2023-02-22T15:03:22+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>https://cn.dubbo.apache.org/zh-cn/overview/mannu
[...]
\ No newline at end of file