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/08/09 11:24:56 UTC
[dubbo-website] branch cn-site updated: deploy: 99c8bd6ec1c4d3856bd4f626a53a3d23cdc4be97
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 c1a23a4e1ab deploy: 99c8bd6ec1c4d3856bd4f626a53a3d23cdc4be97
c1a23a4e1ab is described below
commit c1a23a4e1ab6530b0c133c25ca72f670d34abb91
Author: AlbumenJ <Al...@users.noreply.github.com>
AuthorDate: Wed Aug 9 11:24:50 2023 +0000
deploy: 99c8bd6ec1c4d3856bd4f626a53a3d23cdc4be97
---
.../java-sdk/reference-manual/protocol/grpc/index.html | 8 ++++----
en/docs3-v2/java-sdk/reference-manual/protocol/index.xml | 4 ++--
.../upgrades-and-compatibility/service-discovery/index.xml | 8 ++++----
.../service-discovery/service-discovery-samples/index.html | 12 ++++++------
en/overview/tasks/migration/index.xml | 8 ++++----
.../tasks/migration/service-discovery-samples/index.html | 12 ++++++------
en/sitemap.xml | 2 +-
sitemap.xml | 2 +-
.../index.html" | 6 +++---
.../2-grpc-\345\222\214-protobuf/index.html" | 8 ++++----
.../index.html" | 6 +++---
zh-cn/blog/integration/index.xml | 2 +-
zh-cn/blog/java/demos/index.xml | 4 ++--
zh-cn/blog/news/index.xml | 2 +-
zh-cn/docs/references/protocols/grpc/index.html | 6 +++---
zh-cn/docs/references/protocols/index.xml | 4 ++--
zh-cn/docsv2.7/user/references/protocol/grpc/index.html | 6 +++---
zh-cn/docsv2.7/user/references/protocol/index.xml | 4 ++--
.../java-sdk/reference-manual/protocol/grpc/index.html | 6 +++---
.../mannual/java-sdk/reference-manual/protocol/index.xml | 4 ++--
.../upgrades-and-compatibility/service-discovery/index.xml | 8 ++++----
.../service-discovery/service-discovery-samples/index.html | 12 ++++++------
zh-cn/sitemap.xml | 2 +-
zh-cn/tags/java/index.xml | 4 ++--
.../index.xml" | 2 +-
"zh-cn/tags/\347\224\237\346\200\201/index.xml" | 2 +-
26 files changed, 72 insertions(+), 72 deletions(-)
diff --git a/en/docs3-v2/java-sdk/reference-manual/protocol/grpc/index.html b/en/docs3-v2/java-sdk/reference-manual/protocol/grpc/index.html
index 67a830812aa..2425bf0ab7e 100644
--- a/en/docs3-v2/java-sdk/reference-manual/protocol/grpc/index.html
+++ b/en/docs3-v2/java-sdk/reference-manual/protocol/grpc/index.html
@@ -1,6 +1,6 @@
<!doctype html><html lang=en class=no-js><head><meta name=ROBOTS content="INDEX, FOLLOW"><link rel=canonical href=https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/reference-manual/protocol/grpc/><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="width=device- [...]
-Benefits of supporting gRPC Bring service governance capabilities to users who expect to use the gRPC protocol, and facilitate access to the Dubbo system Users can use Dubbo-style, interface-based programming style to define and use remote services scenes to be used Synchronous backend microservice-to-microservice communication that requires an immediate response to continue processing."><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.o [...]
-Benefits of supporting gRPC Bring service governance capabilities to users who expect to use the gRPC protocol, and facilitate access to the Dubbo system Users can use Dubbo-style, interface-based programming style to define and use remote services scenes to be used Synchronous backend microservice-to-microservice communication that requires an immediate response to continue processing."><meta itemprop=dateModified content="2023-01-02T18:18:49+08:00"><meta itemprop=wordCount content="190 [...]
+Benefits of supporting gRPC Bring service governance capabilities to users who expect to use the gRPC protocol, and facilitate access to the Dubbo system Users can use Dubbo-style, interface-based programming style to define and use remote services scenes to be used Synchronous backend microservice-to-microservice communication that requires an immediate response to continue processing."><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.o [...]
+Benefits of supporting gRPC Bring service governance capabilities to users who expect to use the gRPC protocol, and facilitate access to the Dubbo system Users can use Dubbo-style, interface-based programming style to define and use remote services scenes to be used Synchronous backend microservice-to-microservice communication that requires an immediate response to continue processing."><meta itemprop=dateModified content="2023-08-09T19:18:25+08:00"><meta itemprop=wordCount content="190 [...]
Benefits of supporting gRPC Bring service governance capabilities to users who expect to use the gRPC protocol, and facilitate access to the Dubbo system Users can use Dubbo-style, interface-based programming style to define and use remote services scenes to be used Synchronous backend microservice-to-microservice communication that requires an immediate response to continue processing."><script async src="https://www.googletagmanager.com/gtag/js?id=G-NM6FFMT51J"></script>
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="Feature description Dubbo has supported the gRPC protocol since version 2.7.5. For developers who plan to use HTTP/2 communication, or want to take advantage of the capabilities of Stream, backpressure, and Reactive programming brought by gRPC, You can consider enabling the gRPC protocol.
@@ -511,8 +511,8 @@ Benefits of supporting gRPC Bring service governance capabilities to users who e
<label for=m-endocs3-v2rust-sdkquick-start-check><a href=/en/docs3-v2/rust-sdk/quick-start/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-endocs3-v2rust-sdkquick-start><span>Quick start</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-endocs3-v2rust-sdkjava-interoperability-li><input type=checkbox id=m-endocs3-v2rust-sdkjava-interoperability-check>
<label for=m-endocs3-v2rust-sdkjava-interoperability-check><a href=/en/docs3-v2/rust-sdk/java-interoperability/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-endocs3-v2rust-sdkjava-interoperability><span>Rust and Java interoperability</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-endocs3-v2erlang-sdk-li><input type=checkbox id=m-endocs3-v2erlang-sdk-check>
<label for=m-endocs3-v2erlang-sdk-check><a href=/en/docs3-v2/erlang-sdk/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-endocs3-v2erlang-sdk><span>Erlang</span></a></label></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/en/docs3-v2/>SDK Manual</a></li><li class=breadcrumb-item><a href=https [...]
-You can consider enabling the gRPC protocol.</p><h4 id=benefits-of-supporting-grpc>Benefits of supporting gRPC</h4><ul><li>Bring service governance capabilities to users who expect to use the gRPC protocol, and facilitate access to the Dubbo system</li><li>Users can use Dubbo-style, interface-based programming style to define and use remote services</li></ul><h2 id=scenes-to-be-used>scenes to be used</h2><ul><li>Synchronous backend microservice-to-microservice communication that requires [...]
-<button class="btn btn-primary mb-4 feedback--no">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__disable [...]
+You can consider enabling the gRPC protocol.</p><h4 id=benefits-of-supporting-grpc>Benefits of supporting gRPC</h4><ul><li>Bring service governance capabilities to users who expect to use the gRPC protocol, and facilitate access to the Dubbo system</li><li>Users can use Dubbo-style, interface-based programming style to define and use remote services</li></ul><h2 id=scenes-to-be-used>scenes to be used</h2><ul><li>Synchronous backend microservice-to-microservice communication that requires [...]
+<button class="btn btn-primary mb-4 feedback--no">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__disable [...]
<a href="https://github.com/apache/dubbo-website/new/master/content/en/docs3-v2/java-sdk/reference-manual/protocol/grpc.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+%2 [...]
<a href="https://github.com/apache/dubbo-website/issues/new?title=gRPC%20Protocol" target=_blank><i class="fab fa-github fa-fw"></i> Create an issue</a>
<a href=https://github.com/apache/dubbo/issues/new target=_blank><i class="fas fa-tasks fa-fw"></i> Create project issue</a></div><nav id=TableOfContents><ul><li><a href=#feature-description>Feature description</a><ul><li></li></ul></li><li><a href=#scenes-to-be-used>scenes to be used</a></li><li><a href=#how-to-use>How to use</a><ul><li><a href=#using-grpc-in-dubbo>Using gRPC in Dubbo</a></li><li><a href=#steps>steps</a></li></ul></li></ul></nav></div></div></div></div><footer class="bg [...]
diff --git a/en/docs3-v2/java-sdk/reference-manual/protocol/index.xml b/en/docs3-v2/java-sdk/reference-manual/protocol/index.xml
index 28995bfb5e0..9d3a21c2d36 100644
--- a/en/docs3-v2/java-sdk/reference-manual/protocol/index.xml
+++ b/en/docs3-v2/java-sdk/reference-manual/protocol/index.xml
@@ -757,7 +757,7 @@ You can consider enabling the gRPC protocol.</p>
</ul>
<h2 id="how-to-use">How to use</h2>
<h3 id="using-grpc-in-dubbo">Using gRPC in Dubbo</h3>
-<p><a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">Example</a></p>
+<p><a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">Example</a></p>
<h3 id="steps">steps</h3>
<ol>
<li>Define a service using IDL</li>
@@ -765,7 +765,7 @@ You can consider enabling the gRPC protocol.</p>
<li>Configure to expose/reference Dubbo service</li>
</ol>
<blockquote>
-<p>In addition to the native StreamObserver interface type, Dubbo also supports <a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>, <a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> programming style API.</p>
+<p>In addition to the native StreamObserver interface type, Dubbo also supports <a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>, <a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> programming style API.</p>
</blockquote></description></item><item><title>Docs3-V2: HTTP protocol</title><link>https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/reference-manual/protocol/http/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/reference-manual/protocol/http/</guid><description>
<h2 id="feature-description">Feature description</h2>
<p>HTTP form-based remote invocation protocol, implemented by Spring&rsquo;s HttpInvoker, supported by versions above <code>2.3.0</code>.</p>
diff --git a/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/index.xml b/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/index.xml
index ec0ae79c16a..def5e3504ee 100644
--- a/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/index.xml
+++ b/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/index.xml
@@ -12,7 +12,7 @@
</ol>
<p>Application configuration (can be specified by configuration file or -D) <code>dubbo.application.register-mode</code> enables the global registration switch for instance (only register application level) and all (both interface level and application level registration). After configuring this switch , by default, application-level addresses will be registered with all registries for service discovery on the consumer side.</p>
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src/main/resources/ dubbo.properties](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-serv [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src/main/resources/ dubbo.properties](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/ [...]
</blockquote>
<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># double registration
</span></span><span style="display:flex;"><span>dubbo.application.register-mode=all
@@ -23,7 +23,7 @@
</ol>
<p>Registry-type=service can be configured on the address of the registry to display the registry that specifies the registry as application-level service discovery, and the registry with this configuration will only perform application-level service discovery.</p>
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/ dubbo-provider.xml](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servi [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/ dubbo-provider.xml](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-demo-servicediscovery [...]
</blockquote>
<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">&lt;dubbo:registry</span> address=<span style="color:#2aa198">&#34;nacos://${nacos.address:127.0.0.1}:8848?registry-type=service&#34;</span><span style="color:#268bd2">/&gt;</span>
</span></span></code></pre></div><h3 id="consumer-subscription-mode">Consumer Subscription Mode</h3>
@@ -41,7 +41,7 @@ FORCE_APPLICATION: Only application-level subscriptions will only use the new se
<p>Application configuration (can be specified by configuration file or -D) <code>dubbo.application.service-discovery.migration</code> is <code>APPLICATION_FIRST</code> to enable multi-subscription mode, and configuration to <code>FORCE_APPLICATION</code> can force application-level subscription mode only.
The specific interface subscription can be configured in <code>parameters</code> in <code>ReferenceConfig</code>, and the Key is <code>migration.step</code>, and the Value is <code>APPLICATION_FIRST</code> or <code>FORCE_APPLICATION</code> key-value pair to configure a single subscription.</p>
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-m [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-serviced [...]
</blockquote>
<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>System<span style="color:#719e07">.</span>setProperty<span style="color:#719e07">(</span><span style="color:#2aa198">&#34;dubbo.application.service-discovery.migration&#34;</span><span style="color:#719e07">,</span> <span style="colo [...]
</span></span></code></pre></div><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>ReferenceConfig<span style="color:#719e07">&lt;</span>DemoService<span style="color:#719e07">&gt;</span> referenceConfig <span style="color:#719e07">=</span> <span style="color:#719e07">new&l [...]
@@ -54,7 +54,7 @@ The specific interface subscription can be configured in <code>parameters<
</ol>
<p>This configuration needs to be pushed based on the configuration center, the Key is the application name + <code>.migration</code> (such as <code>demo-application.migraion</code>), and the Group is <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>. For details on rule body configuration, see <a href="../migration-service-discovery/">Guidelines for migrating from interface-level service discovery to application-level service discovery</a>.</p>
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/main/java/ org/apache/dubbo/demo/consumer/UpgradeUtil.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/main/java/ org/apache/dubbo/demo/consumer/UpgradeUtil.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery [...]
</blockquote>
<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>step: FORCE_INTERFACE
</span></span></code></pre></div></description></item><item><title>Docs3-V2: Guidelines for migrating interface-level service discovery to application-level service discovery</title><link>https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/migration-service-discovery/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/migration- [...]
diff --git a/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/index.html b/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/index.html
index d3f427c096a..5600370814c 100644
--- a/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/index.html
+++ b/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=en class=no-js><head><meta name=ROBOTS content="INDEX, FOLLOW"><link rel=canonical href=https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/><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><m [...]
+<!doctype html><html lang=en class=no-js><head><meta name=ROBOTS content="INDEX, FOLLOW"><link rel=canonical href=https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/><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><m [...]
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="This article specifically explains how users can quickly enable new features of application-level service discovery after upgrading to Dubbo 3.0."><meta property="og:description" content="This article specifically explains how users can quickly enable new features of application-level service dis [...]
<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=/en/><span class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div class="td- [...]
@@ -504,23 +504,23 @@
<label for=m-endocs3-v2rust-sdk-check><a href=/en/docs3-v2/rust-sdk/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-endocs3-v2rust-sdk><span>Rust</span></a></label><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-endocs3-v2rust-sdkquick-start-li><input type=checkbox id=m-endocs3-v2rust-sdkquick-start-check>
<label for=m-endocs3-v2rust-sdkquick-start-check><a href=/en/docs3-v2/rust-sdk/quick-start/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-endocs3-v2rust-sdkquick-start><span>Quick start</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-endocs3-v2rust-sdkjava-interoperability-li><input type=checkbox id=m-endocs3-v2rust-sdkjava-interoperability-check>
<label for=m-endocs3-v2rust-sdkjava-interoperability-check><a href=/en/docs3-v2/rust-sdk/java-interoperability/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-endocs3-v2rust-sdkjava-interoperability><span>Rust and Java interoperability</span></a></label></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-endocs3-v2erlang-sdk-li><input type=checkbox id=m-endocs3-v2erlang-sdk-check>
-<label for=m-endocs3-v2erlang-sdk-check><a href=/en/docs3-v2/erlang-sdk/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-endocs3-v2erlang-sdk><span>Erlang</span></a></label></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/en/docs3-v2/>SDK Manual</a></li><li class=breadcrumb-item><a href=https [...]
+<label for=m-endocs3-v2erlang-sdk-check><a href=/en/docs3-v2/erlang-sdk/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-endocs3-v2erlang-sdk><span>Erlang</span></a></label></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/en/docs3-v2/>SDK Manual</a></li><li class=breadcrumb-item><a href=https [...]
</span></span><span style=display:flex><span>dubbo.application.register-mode=all
</span></span></code></pre></div><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># Application-level registration only
</span></span><span style=display:flex><span>dubbo.application.register-mode=instance
-</span></span></code></pre></div><ol start=2><li>Registration center address parameter configuration</li></ol><p>Registry-type=service can be configured on the address of the registry to display the registry that specifies the registry as application-level service discovery, and the registry with this configuration will only perform application-level service discovery.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-se [...]
+</span></span></code></pre></div><ol start=2><li>Registration center address parameter configuration</li></ol><p>Registry-type=service can be configured on the address of the registry to display the registry that specifies the registry as application-level service discovery, and the registry with this configuration will only perform application-level service discovery.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-se [...]
</span></span></code></pre></div><h3 id=consumer-subscription-mode>Consumer Subscription Mode</h3><p>FORCE_INTERFACE: only interface-level subscription, the behavior is consistent with Dubbo 2.7 and previous versions.
APPLICATION_FIRST: interface level + application level multi-subscription, if the application level can subscribe to the address, use the application level subscription, if the address cannot be subscribed, use the interface level subscription, so as to ensure the greatest compatibility during the migration process. (Note: Due to the simultaneous subscription behavior, the memory usage in this mode will increase to a certain extent, so after all servers are upgraded to Dubbo 3.0, it is r [...]
FORCE_APPLICATION: Only application-level subscriptions will only use the new service discovery model.</p><h3 id=consumer-configuration>Consumer configuration</h3><ol><li>Default configuration (no configuration required)</li></ol><p>After upgrading to Dubbo 3.0, the default behavior is interface-level + application-level multi-subscription. If the address can be subscribed at the application level, the application-level subscription will be used. If the address cannot be subscribed, the [...]
-The specific interface subscription can be configured in <code>parameters</code> in <code>ReferenceConfig</code>, and the Key is <code>migration.step</code>, and the Value is <code>APPLICATION_FIRST</code> or <code>FORCE_APPLICATION</code> key-value pair to configure a single subscription.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/ [...]
+The specific interface subscription can be configured in <code>parameters</code> in <code>ReferenceConfig</code>, and the Key is <code>migration.step</code>, and the Value is <code>APPLICATION_FIRST</code> or <code>FORCE_APPLICATION</code> key-value pair to configure a single subscription.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/ [...]
</span></span></code></pre></div><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>ReferenceConfig<span style=color:#719e07><</span>DemoService<span style=color:#719e07>></span> referenceConfig <span style=color:#719e07>=</span> <span style=color:#719e07>new</span> ReferenceConfig<span style=color:#719e07><>(</span>applicationModel<s [...]
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>setInterface<span style=color:#719e07>(</span>DemoService<span style=color:#719e07>.</span>class<span style=color:#719e07>);</span>
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>setParameters<span style=color:#719e07>(</span><span style=color:#719e07>new</span> HashMap<span style=color:#719e07><>());</span>
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>getParameters<span style=color:#719e07>().</span>put<span style=color:#719e07>(</span><span style=color:#2aa198>"migration.step"</span><span style=color:#719e07>,</span> mode<span style=color:#719e07>);</span>
</span></span><span style=display:flex><span><span style=color:#719e07>return</span> referenceConfig<span style=color:#719e07>.</span>get<span style=color:#719e07>();</span>
-</span></span></code></pre></div><ol start=3><li>Dynamic configuration (highest priority, configuration can be modified at runtime)</li></ol><p>This configuration needs to be pushed based on the configuration center, the Key is the application name + <code>.migration</code> (such as <code>demo-application.migraion</code>), and the Group is <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>. For details on rule body configuration, see <a href=../migration-service-discovery/>Guidelines for migr [...]
+</span></span></code></pre></div><ol start=3><li>Dynamic configuration (highest priority, configuration can be modified at runtime)</li></ol><p>This configuration needs to be pushed based on the configuration center, the Key is the application name + <code>.migration</code> (such as <code>demo-application.migraion</code>), and the Group is <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>. For details on rule body configuration, see <a href=../migration-service-discovery/>Guidelines for migr [...]
</span></span></code></pre></div><div id=pre-footer><h2>Feedback</h2><p class=feedback--prompt>Was this page helpful?</p><button class="btn btn-primary mb-4 feedback--yes">Yes</button>
-<button class="btn btn-primary mb-4 feedback--no">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__disable [...]
+<button class="btn btn-primary mb-4 feedback--no">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__disable [...]
<a href="https://github.com/apache/dubbo-website/new/master/content/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples.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.+%6 [...]
<a href="https://github.com/apache/dubbo-website/issues/new?title=Application-Level%20Service%20Discovery%20Migration%20Example" target=_blank><i class="fab fa-github fa-fw"></i> Create an issue</a>
<a href=https://github.com/apache/dubbo/issues/new target=_blank><i class="fas fa-tasks fa-fw"></i> Create project issue</a></div><nav id=TableOfContents><ul><li><a href=#open-method>Open method</a><ul><li><a href=#server>Server</a></li><li><a href=#consumer-side>Consumer side</a></li></ul></li><li><a href=#detailed-description>Detailed description</a><ul><li><a href=#server-configuration>Server configuration</a></li><li><a href=#consumer-subscription-mode>Consumer Subscription Mode</a>< [...]
diff --git a/en/overview/tasks/migration/index.xml b/en/overview/tasks/migration/index.xml
index b4030096f55..e432fc0b67a 100644
--- a/en/overview/tasks/migration/index.xml
+++ b/en/overview/tasks/migration/index.xml
@@ -66,7 +66,7 @@
</ol>
<p>Application configuration (can be specified by configuration file or -D) <code>dubbo.application.register-mode</code> enables the global registration switch for instance (only register application level) and all (both interface level and application level registration). After configuring this switch , by default, application-level addresses will be registered with all registries for service discovery on the consumer side.</p>
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src/main/resources/ dubbo.properties](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-serv [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src/main/resources/ dubbo.properties](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/ [...]
</blockquote>
<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># double registration
</span></span><span style="display:flex;"><span>dubbo.application.register-mode=all
@@ -77,7 +77,7 @@
</ol>
<p>Registry-type=service can be configured on the address of the registry to display the registry that specifies the registry as application-level service discovery, and the registry with this configuration will only perform application-level service discovery.</p>
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/ dubbo-provider.xml](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servi [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/ dubbo-provider.xml](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-demo-servicediscovery [...]
</blockquote>
<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">&lt;dubbo:registry</span> address=<span style="color:#2aa198">&#34;nacos://${nacos.address:127.0.0.1}:8848?registry-type=service&#34;</span><span style="color:#268bd2">/&gt;</span>
</span></span></code></pre></div><h3 id="consumer-subscription-mode">Consumer Subscription Mode</h3>
@@ -95,7 +95,7 @@ FORCE_APPLICATION: Only application-level subscriptions will only use the new se
<p>Application configuration (can be specified by configuration file or -D) <code>dubbo.application.service-discovery.migration</code> is <code>APPLICATION_FIRST</code> to enable multi-subscription mode, and configuration to <code>FORCE_APPLICATION</code> can force application-level subscription mode only.
The specific interface subscription can be configured in <code>parameters</code> in <code>ReferenceConfig</code>, and the Key is <code>migration.step</code>, and the Value is <code>APPLICATION_FIRST</code> or <code>FORCE_APPLICATION</code> key-value pair to configure a single subscription.</p>
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-m [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-serviced [...]
</blockquote>
<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>System<span style="color:#719e07">.</span>setProperty<span style="color:#719e07">(</span><span style="color:#2aa198">&#34;dubbo.application.service-discovery.migration&#34;</span><span style="color:#719e07">,</span> <span style="colo [...]
</span></span></code></pre></div><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>ReferenceConfig<span style="color:#719e07">&lt;</span>DemoService<span style="color:#719e07">&gt;</span> referenceConfig <span style="color:#719e07">=</span> <span style="color:#719e07">new&l [...]
@@ -108,7 +108,7 @@ The specific interface subscription can be configured in <code>parameters<
</ol>
<p>This configuration needs to be pushed based on the configuration center, the Key is the application name + <code>.migration</code> (such as <code>demo-application.migraion</code>), and the Group is <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>. For details on rule body configuration, see <a href="https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-rule/">Guidelines for migrating from interface-level se [...]
<blockquote>
-<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/main/java/ org/apache/dubbo/demo/consumer/UpgradeUtil.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration [...]
+<p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/main/java/ org/apache/dubbo/demo/consumer/UpgradeUtil.java](<a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration">https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery [...]
</blockquote>
<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>step: FORCE_INTERFACE
</span></span></code></pre></div></description></item></channel></rss>
\ No newline at end of file
diff --git a/en/overview/tasks/migration/service-discovery-samples/index.html b/en/overview/tasks/migration/service-discovery-samples/index.html
index 45b9722489e..7f1481a325c 100644
--- a/en/overview/tasks/migration/service-discovery-samples/index.html
+++ b/en/overview/tasks/migration/service-discovery-samples/index.html
@@ -1,4 +1,4 @@
-<!doctype html><html lang=en class=no-js><head><meta name=ROBOTS content="INDEX, FOLLOW"><link rel=canonical href=https://cn.dubbo.apache.org/en/overview/tasks/migration/service-discovery-samples/><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="width=devic [...]
+<!doctype html><html lang=en class=no-js><head><meta name=ROBOTS content="INDEX, FOLLOW"><link rel=canonical href=https://cn.dubbo.apache.org/en/overview/tasks/migration/service-discovery-samples/><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="width=devic [...]
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="This article specifically explains how users can quickly enable new features of application-level service discovery after upgrading to Dubbo 3.0."><meta property="og:description" content="This article specifically explains how users can quickly enable new features of application-level service dis [...]
<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=/en/><span class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div class="td- [...]
@@ -55,23 +55,23 @@
<label for=m-enoverviewcore-featuressecurity-check><a href=/en/overview/core-features/security/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-enoverviewcore-featuressecurity><span>认证鉴权</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-enoverviewcore-featuresservice-mesh-li><input type=checkbox id=m-enoverviewcore-featuresservice-mesh-check>
<label for=m-enoverviewcore-featuresservice-mesh-check><a href=/en/overview/core-features/service-mesh/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-enoverviewcore-featuresservice-mesh><span>服务网格</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-enoverviewcore-featuresecosystem-li><input type=checkbox id=m-enoverviewcore-featuresecosystem-check>
<label for=m-enoverviewcore-featuresecosystem-check><a href=/en/overview/core-features/ecosystem/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-enoverviewcore-featuresecosystem><span>微服务生态</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-enoverviewcore-featuresmore-li><input type=checkbox id=m-enoverviewcore-featuresmore-check>
-<label for=m-enoverviewcore-featuresmore-check><a href=/en/overview/core-features/more/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-enoverviewcore-featuresmore><span>更多高级功能</span></a></label></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/en/overview/>Overview</a></li><li class=br [...]
+<label for=m-enoverviewcore-featuresmore-check><a href=/en/overview/core-features/more/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-enoverviewcore-featuresmore><span>更多高级功能</span></a></label></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/en/overview/>Overview</a></li><li class=br [...]
</span></span><span style=display:flex><span>dubbo.application.register-mode=all
</span></span></code></pre></div><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># Application-level registration only
</span></span><span style=display:flex><span>dubbo.application.register-mode=instance
-</span></span></code></pre></div><ol start=2><li>Registration center address parameter configuration</li></ol><p>Registry-type=service can be configured on the address of the registry to display the registry that specifies the registry as application-level service discovery, and the registry with this configuration will only perform application-level service discovery.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-se [...]
+</span></span></code></pre></div><ol start=2><li>Registration center address parameter configuration</li></ol><p>Registry-type=service can be configured on the address of the registry to display the registry that specifies the registry as application-level service discovery, and the registry with this configuration will only perform application-level service discovery.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-demo-se [...]
</span></span></code></pre></div><h3 id=consumer-subscription-mode>Consumer Subscription Mode</h3><p>FORCE_INTERFACE: only interface-level subscription, the behavior is consistent with Dubbo 2.7 and previous versions.
APPLICATION_FIRST: interface level + application level multi-subscription, if the application level can subscribe to the address, use the application level subscription, if the address cannot be subscribed, use the interface level subscription, so as to ensure the greatest compatibility during the migration process. (Note: Due to the simultaneous subscription behavior, the memory usage in this mode will increase to a certain extent, so after all servers are upgraded to Dubbo 3.0, it is r [...]
FORCE_APPLICATION: Only application-level subscriptions will only use the new service discovery model.</p><h3 id=consumer-configuration>Consumer configuration</h3><ol><li>Default configuration (no configuration required)</li></ol><p>After upgrading to Dubbo 3.0, the default behavior is interface-level + application-level multi-subscription. If the address can be subscribed at the application level, the application-level subscription will be used. If the address cannot be subscribed, the [...]
-The specific interface subscription can be configured in <code>parameters</code> in <code>ReferenceConfig</code>, and the Key is <code>migration.step</code>, and the Value is <code>APPLICATION_FIRST</code> or <code>FORCE_APPLICATION</code> key-value pair to configure a single subscription.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/ [...]
+The specific interface subscription can be configured in <code>parameters</code> in <code>ReferenceConfig</code>, and the Key is <code>migration.step</code>, and the Value is <code>APPLICATION_FIRST</code> or <code>FORCE_APPLICATION</code> key-value pair to configure a single subscription.</p><blockquote><p>Example: [https://github.com/apache/dubbo-samples/blob/master/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/ org/ [...]
</span></span></code></pre></div><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>ReferenceConfig<span style=color:#719e07><</span>DemoService<span style=color:#719e07>></span> referenceConfig <span style=color:#719e07>=</span> <span style=color:#719e07>new</span> ReferenceConfig<span style=color:#719e07><>(</span>applicationModel<s [...]
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>setInterface<span style=color:#719e07>(</span>DemoService<span style=color:#719e07>.</span>class<span style=color:#719e07>);</span>
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>setParameters<span style=color:#719e07>(</span><span style=color:#719e07>new</span> HashMap<span style=color:#719e07><>());</span>
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>getParameters<span style=color:#719e07>().</span>put<span style=color:#719e07>(</span><span style=color:#2aa198>"migration.step"</span><span style=color:#719e07>,</span> mode<span style=color:#719e07>);</span>
</span></span><span style=display:flex><span><span style=color:#719e07>return</span> referenceConfig<span style=color:#719e07>.</span>get<span style=color:#719e07>();</span>
-</span></span></code></pre></div><ol start=3><li>Dynamic configuration (highest priority, configuration can be modified at runtime)</li></ol><p>This configuration needs to be pushed based on the configuration center, the Key is the application name + <code>.migration</code> (such as <code>demo-application.migraion</code>), and the Group is <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>. For details on rule body configuration, see <a href=/en/docs3-v2/java-sdk/upgrades-and-compatibility/se [...]
+</span></span></code></pre></div><ol start=3><li>Dynamic configuration (highest priority, configuration can be modified at runtime)</li></ol><p>This configuration needs to be pushed based on the configuration center, the Key is the application name + <code>.migration</code> (such as <code>demo-application.migraion</code>), and the Group is <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>. For details on rule body configuration, see <a href=/en/docs3-v2/java-sdk/upgrades-and-compatibility/se [...]
</span></span></code></pre></div><div id=pre-footer><h2>Feedback</h2><p class=feedback--prompt>Was this page helpful?</p><button class="btn btn-primary mb-4 feedback--yes">Yes</button>
-<button class="btn btn-primary mb-4 feedback--no">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__disable [...]
+<button class="btn btn-primary mb-4 feedback--no">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__disable [...]
<a href="https://github.com/apache/dubbo-website/new/master/content/en/overview/tasks/migration/service-discovery-samples.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=Dubbo3%20application-level%20service%20discovery" target=_blank><i class="fab fa-github fa-fw"></i> Create an issue</a>
<a href=https://github.com/apache/dubbo/issues/new target=_blank><i class="fas fa-tasks fa-fw"></i> Create project issue</a></div><nav id=TableOfContents><ul><li><a href=#open-method>Open method</a></li><li><a href=#server>Server</a><ul><li><a href=#consumer-side>Consumer side</a></li></ul></li><li><a href=#detailed-description>Detailed description</a><ul><li><a href=#server-configuration>Server configuration</a></li><li><a href=#consumer-subscription-mode>Consumer Subscription Mode</a>< [...]
diff --git a/en/sitemap.xml b/en/sitemap.xml
index 1657df38764..6fe12ff9862 100644
--- a/en/sitemap.xml
+++ b/en/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/en/docs3-v2/java-sdk/faq/0/</loc><lastmod>2023-01-02T18:18:49+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/faq/0/1/</loc><lastmod>2023-01-03T15:09:00+08:00</lastmod><changefreq>monthly</changefreq><priorit [...]
\ 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/en/docs3-v2/java-sdk/faq/0/</loc><lastmod>2023-01-02T18:18:49+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>https://cn.dubbo.apache.org/en/docs3-v2/java-sdk/faq/0/1/</loc><lastmod>2023-01-03T15:09:00+08:00</lastmod><changefreq>monthly</changefreq><priorit [...]
\ No newline at end of file
diff --git a/sitemap.xml b/sitemap.xml
index e821f31e1b9..6c8f6bc0073 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-08-09T17:15:43+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-07-20T16:25:18+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-08-09T19:18:25+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-08-09T19:18:25+08:00</lastmod></sitemap></sitemapindex>
\ No newline at end of file
diff --git "a/zh-cn/blog/2018/07/12/\344\275\277\347\224\250pinpoint\345\201\232\345\210\206\345\270\203\345\274\217\350\267\237\350\270\252/index.html" "b/zh-cn/blog/2018/07/12/\344\275\277\347\224\250pinpoint\345\201\232\345\210\206\345\270\203\345\274\217\350\267\237\350\270\252/index.html"
index 403f3c76e8c..dad2d5fb438 100644
--- "a/zh-cn/blog/2018/07/12/\344\275\277\347\224\250pinpoint\345\201\232\345\210\206\345\270\203\345\274\217\350\267\237\350\270\252/index.html"
+++ "b/zh-cn/blog/2018/07/12/\344\275\277\347\224\250pinpoint\345\201\232\345\210\206\345\270\203\345\274\217\350\267\237\350\270\252/index.html"
@@ -1,6 +1,6 @@
<!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/blog/2018/07/12/%E4%BD%BF%E7%94%A8pinpoint%E5%81%9A%E5%88%86%E5%B8%83%E5%BC%8F%E8%B7%9F%E8%B8%AA/><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 ch [...]
-"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/blog/2018/07/12/%E4%BD%BF%E7%94%A8pinpoint%E5%81%9A%E5%88%86%E5%B8%83%E5%BC%8F%E8%B7%9F%E8%B8%AA/"><meta property="article:section" content="blog"><meta property="article:published_time" content="2018-07-12T00:00:00+00:00"><meta property="article:modified_time" content="2023-02-22T15:03:22+08:00"><meta itemprop=name content="使用Pinpoint做分布式跟踪"><meta itemprop=description content= [...]
-"><meta itemprop=datePublished content="2018-07-12T00:00:00+00:00"><meta itemprop=dateModified content="2023-02-22T15:03:22+08:00"><meta itemprop=wordCount content="560"><meta itemprop=keywords content="生态,Java,"><meta name=twitter:card content="summary"><meta name=twitter:title content="使用Pinpoint做分布式跟踪"><meta name=twitter:description content="本文介绍了利用Pinpoint对Dubbo分布式应用进行调用链跟踪与性能监控。
+"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/blog/2018/07/12/%E4%BD%BF%E7%94%A8pinpoint%E5%81%9A%E5%88%86%E5%B8%83%E5%BC%8F%E8%B7%9F%E8%B8%AA/"><meta property="article:section" content="blog"><meta property="article:published_time" content="2018-07-12T00:00:00+00:00"><meta property="article:modified_time" content="2023-08-09T19:18:25+08:00"><meta itemprop=name content="使用Pinpoint做分布式跟踪"><meta itemprop=description content= [...]
+"><meta itemprop=datePublished content="2018-07-12T00:00:00+00:00"><meta itemprop=dateModified content="2023-08-09T19:18:25+08:00"><meta itemprop=wordCount content="560"><meta itemprop=keywords content="生态,Java,"><meta name=twitter:card content="summary"><meta name=twitter:title content="使用Pinpoint做分布式跟踪"><meta name=twitter:description content="本文介绍了利用Pinpoint对Dubbo分布式应用进行调用链跟踪与性能监控。
"><script async src="https://www.googletagmanager.com/gtag/js?id=G-NM6FFMT51J"></script>
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="本文介绍了利用Pinpoint对Dubbo分布式应用进行调用链跟踪与性能监控。
@@ -199,7 +199,7 @@
<label for=m-zh-cnblog20221023apache-dubbo-e5a49ae8afade8a880e4bd93e7b3bbe5868de6b7bbe696b0e59198e9a696e4b8aa-rust-e8afade8a880e78988e69cace6ada3e5bc8fe58f91e5b883-check><a href=/zh-cn/blog/2022/10/23/apache-dubbo-%E5%A4%9A%E8%AF%AD%E8%A8%80%E4%BD%93%E7%B3%BB%E5%86%8D%E6%B7%BB%E6%96%B0%E5%91%98%E9%A6%96%E4%B8%AA-rust-%E8%AF%AD%E8%A8%80%E7%89%88%E6%9C%AC%E6%AD%A3%E5%BC%8F%E5%8F%91%E5%B8%83/ title="Apache Dubbo 多语言体系再添新员:首个 Rust 语言版本正式发布" class="align-left pl-0 td-sidebar-link td-sidebar-l [...]
<label for=m-zh-cnblogpixiu-check><a href=/zh-cn/blog/pixiu/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-zh-cnblogpixiu><span>Pixiu</span></a></label><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-zh-cnblog20220219e8b088e8b088pixiue79a84filter-li><input type=checkbox id=m-zh-cnblog20220219e8b088e8b088pixiue79a84filter-check>
<label for=m-zh-cnblog20220219e8b088e8b088pixiue79a84filter-check><a href=/zh-cn/blog/2022/02/19/%E8%B0%88%E8%B0%88pixiu%E7%9A%84filter/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cnblog20220219e8b088e8b088pixiue79a84filter><span>谈谈Pixiu的Filter</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-zh-cnblog20210825dubbo-e8b7a8e8afade8a880e8b083e794a8e7a59ee585bddubbo-go-pixiu-li><input type=checkbox id=m-zh- [...]
-<label for=m-zh-cnblog20210825dubbo-e8b7a8e8afade8a880e8b083e794a8e7a59ee585bddubbo-go-pixiu-check><a href=/zh-cn/blog/2021/08/25/dubbo-%E8%B7%A8%E8%AF%AD%E8%A8%80%E8%B0%83%E7%94%A8%E7%A5%9E%E5%85%BDdubbo-go-pixiu/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cnblog20210825dubbo-e8b7a8e8afade8a880e8b083e794a8e7a59ee585bddubbo-go-pixiu><span>Dubbo 跨语言调用神兽:dubbo-go-pixiu</span></a></label></li></ul></li></ul></li></ul></nav></div></div><main class="col-12 col-md-9 [...]
+<label for=m-zh-cnblog20210825dubbo-e8b7a8e8afade8a880e8b083e794a8e7a59ee585bddubbo-go-pixiu-check><a href=/zh-cn/blog/2021/08/25/dubbo-%E8%B7%A8%E8%AF%AD%E8%A8%80%E8%B0%83%E7%94%A8%E7%A5%9E%E5%85%BDdubbo-go-pixiu/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cnblog20210825dubbo-e8b7a8e8afade8a880e8b083e794a8e7a59ee585bddubbo-go-pixiu><span>Dubbo 跨语言调用神兽:dubbo-go-pixiu</span></a></label></li></ul></li></ul></li></ul></nav></div></div><main class="col-12 col-md-9 [...]
仿照Google Dapper,Pinpoint通过跟踪分布式应用之间的调用来提供解决方案,以帮助分析系统的总体结构和内部模块之间如何相互联系。</p><blockquote><p>注:对于各个模块之间的通讯英文原文中用的是transaction一词,但是我觉得如果翻译为"事务"容易引起误解,所以替换为"交互"或者"调用"这种比较直白的字眼。</p></blockquote><p>在使用上力图简单高效:</p><ul><li>安装agent,不需要修改哪怕一行代码</li><li>最小化性能损失</li></ul><h3 id=服务器地图servermap>服务器地图(ServerMap)</h3><p>通过可视化分布式系统的模块和他们之间的相互联系来理解系统拓扑。点击某个节点会展示这个模块的详情,比如它当前的状态和请求数量。</p><h3 id=实时活动线程图表realtime-active-thread-chart>实时活动线程图表(Realtime Active Thread Chart)</h3><p>实时监控应用内部的活动线程。</p><h3 id=请求应答
分 [...]
</span></span><span style=display:flex><span><span style=color:#268bd2><project</span> xmlns=<span style=color:#2aa198>"http://maven.apache.org/POM/4.0.0"</span>
</span></span><span style=display:flex><span> xmlns:xsi=<span style=color:#2aa198>"http://www.w3.org/2001/XMLSchema-instance"</span>
diff --git "a/zh-cn/blog/2019/10/28/dubbo-\345\234\250\350\267\250\350\257\255\350\250\200\345\222\214\345\215\217\350\256\256\347\251\277\351\200\217\346\200\247\346\226\271\345\220\221\344\270\212\347\232\204\346\216\242\347\264\242\346\224\257\346\214\201-http/2-grpc-\345\222\214-protobuf/index.html" "b/zh-cn/blog/2019/10/28/dubbo-\345\234\250\350\267\250\350\257\255\350\250\200\345\222\214\345\215\217\350\256\256\347\251\277\351\200\217\346\200\247\346\226\271\345\220\221\344\270\212\ [...]
index 02ea316b5b6..f4f716c9758 100644
--- "a/zh-cn/blog/2019/10/28/dubbo-\345\234\250\350\267\250\350\257\255\350\250\200\345\222\214\345\215\217\350\256\256\347\251\277\351\200\217\346\200\247\346\226\271\345\220\221\344\270\212\347\232\204\346\216\242\347\264\242\346\224\257\346\214\201-http/2-grpc-\345\222\214-protobuf/index.html"
+++ "b/zh-cn/blog/2019/10/28/dubbo-\345\234\250\350\267\250\350\257\255\350\250\200\345\222\214\345\215\217\350\256\256\347\251\277\351\200\217\346\200\247\346\226\271\345\220\221\344\270\212\347\232\204\346\216\242\347\264\242\346\224\257\346\214\201-http/2-grpc-\345\222\214-protobuf/index.html"
@@ -1,6 +1,6 @@
<!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/blog/2019/10/28/dubbo-%E5%9C%A8%E8%B7%A8%E8%AF%AD%E8%A8%80%E5%92%8C%E5%8D%8F%E8%AE%AE%E7%A9%BF%E9%80%8F%E6%80%A7%E6%96%B9%E5%90%91%E4%B8%8A%E7%9A%84%E6%8E%A2%E7%B4%A2%E6%94%AF%E6%8C%81-http/2-grpc-%E5%92%8C-protobuf/><script>var _hmt=_hmt||[];(function(){var e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47 [...]
-"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/blog/2019/10/28/dubbo-%E5%9C%A8%E8%B7%A8%E8%AF%AD%E8%A8%80%E5%92%8C%E5%8D%8F%E8%AE%AE%E7%A9%BF%E9%80%8F%E6%80%A7%E6%96%B9%E5%90%91%E4%B8%8A%E7%9A%84%E6%8E%A2%E7%B4%A2%E6%94%AF%E6%8C%81-http/2-grpc-%E5%92%8C-protobuf/"><meta property="article:section" content="blog"><meta property="article:published_time" content="2019-10-28T00:00:00+00:00"><meta property="article:modified_time" [...]
-"><meta itemprop=datePublished content="2019-10-28T00:00:00+00:00"><meta itemprop=dateModified content="2023-03-01T15:24:06+08:00"><meta itemprop=wordCount content="1503"><meta itemprop=keywords content="Java,"><meta name=twitter:card content="summary"><meta name=twitter:title content="Dubbo 在跨语言和协议穿透性方向上的探索:支持 HTTP/2 gRPC 和 Protobuf"><meta name=twitter:description content="本文整理自刘军在 Dubbo 成都 meetup 上分享的《Dubbo 在多语言和协议穿透性方向上的探索》。
+"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/blog/2019/10/28/dubbo-%E5%9C%A8%E8%B7%A8%E8%AF%AD%E8%A8%80%E5%92%8C%E5%8D%8F%E8%AE%AE%E7%A9%BF%E9%80%8F%E6%80%A7%E6%96%B9%E5%90%91%E4%B8%8A%E7%9A%84%E6%8E%A2%E7%B4%A2%E6%94%AF%E6%8C%81-http/2-grpc-%E5%92%8C-protobuf/"><meta property="article:section" content="blog"><meta property="article:published_time" content="2019-10-28T00:00:00+00:00"><meta property="article:modified_time" [...]
+"><meta itemprop=datePublished content="2019-10-28T00:00:00+00:00"><meta itemprop=dateModified content="2023-08-09T19:18:25+08:00"><meta itemprop=wordCount content="1503"><meta itemprop=keywords content="Java,"><meta name=twitter:card content="summary"><meta name=twitter:title content="Dubbo 在跨语言和协议穿透性方向上的探索:支持 HTTP/2 gRPC 和 Protobuf"><meta name=twitter:description content="本文整理自刘军在 Dubbo 成都 meetup 上分享的《Dubbo 在多语言和协议穿透性方向上的探索》。
"><script async src="https://www.googletagmanager.com/gtag/js?id=G-NM6FFMT51J"></script>
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="本文整理自刘军在 Dubbo 成都 meetup 上分享的《Dubbo 在多语言和协议穿透性方向上的探索》。
@@ -220,7 +220,7 @@
</span></span></code></pre></div><p>除了结构化数据描述之外,Protobuf 还支持定义 RPC 服务,它允许我们定义一个 <code>.proto</code> 的服务描述文件,进而利用 Protobuf Compiler 工具生成特定语言和 RPC 框架的接口和 stub。后续将要具体讲到的 gRPC + Protobuf、Dubbo-gRPC + Protobuf 以及 Dubbo + Protobuf 都是通过定制 Compiler 类实现的。</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>service SearchService {
</span></span><span style=display:flex><span> rpc Search (SearchRequest) returns (SearchResponse);
</span></span><span style=display:flex><span>}
-</span></span></code></pre></div><h2 id=dubbo-所做的支持>Dubbo 所做的支持</h2><p>跨语言的服务开发涉及到多个方面,从服务定义、RPC 协议到序列化协议都要做到语言中立,同时还针对每种语言有对应的 SDK 实现。虽然得益于社区的贡献,现在 Dubbo 在多语言 SDK 实现上逐步有了起色,已经提供了包括 Java, Go, PHP, C#, Python, NodeJs, C 等版本的客户端或全量实现版本,但在以上提到的跨语言友好型方面,以上三点还是有很多可改进之处。</p><ul><li><p>协议,上面我们已经分析过 Dubbo 协议既有的缺点,如果能在 HTTP/2 之上构建应用层协议,则无疑能避免这些弊端,同时最大可能的提高协议的穿透性,避免网关等协议转换组件的存在,更有利于链路上的流量管控。考虑到 gRPC 是构建在 HTTP/2 之上,并且已经是云原生领域推荐的通信协议,Dubbo 在第一阶段选择了直接支持 gRPC
协议作为当前的 HTTP/2 解决方案。我们也知道 gRPC 框架自身的弊端在于易用 [...]
+</span></span></code></pre></div><h2 id=dubbo-所做的支持>Dubbo 所做的支持</h2><p>跨语言的服务开发涉及到多个方面,从服务定义、RPC 协议到序列化协议都要做到语言中立,同时还针对每种语言有对应的 SDK 实现。虽然得益于社区的贡献,现在 Dubbo 在多语言 SDK 实现上逐步有了起色,已经提供了包括 Java, Go, PHP, C#, Python, NodeJs, C 等版本的客户端或全量实现版本,但在以上提到的跨语言友好型方面,以上三点还是有很多可改进之处。</p><ul><li><p>协议,上面我们已经分析过 Dubbo 协议既有的缺点,如果能在 HTTP/2 之上构建应用层协议,则无疑能避免这些弊端,同时最大可能的提高协议的穿透性,避免网关等协议转换组件的存在,更有利于链路上的流量管控。考虑到 gRPC 是构建在 HTTP/2 之上,并且已经是云原生领域推荐的通信协议,Dubbo 在第一阶段选择了直接支持 gRPC
协议作为当前的 HTTP/2 解决方案。我们也知道 gRPC 框架自身的弊端在于易用 [...]
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span>option java_multiple_files = <span style=color:#cb4b16>true</span>;
</span></span><span style=display:flex><span>option java_package = <span style=color:#2aa198>"io.grpc.examples.helloworld"</span>;
@@ -463,7 +463,7 @@
</span></span><span style=display:flex><span> <span style=color:#268bd2></execution></span>
</span></span><span style=display:flex><span> <span style=color:#268bd2></executions></span>
</span></span><span style=display:flex><span><span style=color:#268bd2></plugin></span>
-</span></span></code></pre></div><p>注意,这里与 <a href=https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc>Dubbo 对 gRPC</a> 支持部分的区别在于:
+</span></span></code></pre></div><p>注意,这里与 <a href=https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc>Dubbo 对 gRPC</a> 支持部分的区别在于:
<code><pluginParameter>dubbo</pluginParameter></code></p><ol start=2><li><p>生成 Dubbo stub</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-shell data-lang=shell><span style=display:flex><span><span style=color:#586e75># 运行以下 maven 命令</span>
</span></span><span style=display:flex><span><span style=color:#268bd2>$mvn</span> clean compile
</span></span></code></pre></div><p>生成的 Java 类如下:</p><p><img src=/imgs/blog/grpc/compiler-protobuf.png alt=image-20191028201240976></p><p>DemoServiceDubbo 为 Dubbo 定制的 stub</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>final</span> <span style=color:#268bd2>class</span> <spa [...]
diff --git "a/zh-cn/blog/2020/05/11/\344\273\216-2019-\345\210\260-2020apache-dubbo-\345\271\264\345\272\246\345\233\236\351\241\276\344\270\216\346\200\273\347\273\223/index.html" "b/zh-cn/blog/2020/05/11/\344\273\216-2019-\345\210\260-2020apache-dubbo-\345\271\264\345\272\246\345\233\236\351\241\276\344\270\216\346\200\273\347\273\223/index.html"
index fbd9c8e5867..37d22069c9a 100644
--- "a/zh-cn/blog/2020/05/11/\344\273\216-2019-\345\210\260-2020apache-dubbo-\345\271\264\345\272\246\345\233\236\351\241\276\344\270\216\346\200\273\347\273\223/index.html"
+++ "b/zh-cn/blog/2020/05/11/\344\273\216-2019-\345\210\260-2020apache-dubbo-\345\271\264\345\272\246\345\233\236\351\241\276\344\270\216\346\200\273\347\273\223/index.html"
@@ -1,6 +1,6 @@
<!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/blog/2020/05/11/%E4%BB%8E-2019-%E5%88%B0-2020apache-dubbo-%E5%B9%B4%E5%BA%A6%E5%9B%9E%E9%A1%BE%E4%B8%8E%E6%80%BB%E7%BB%93/><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( [...]
-"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/blog/2020/05/11/%E4%BB%8E-2019-%E5%88%B0-2020apache-dubbo-%E5%B9%B4%E5%BA%A6%E5%9B%9E%E9%A1%BE%E4%B8%8E%E6%80%BB%E7%BB%93/"><meta property="article:section" content="blog"><meta property="article:published_time" content="2020-05-11T00:00:00+00:00"><meta property="article:modified_time" content="2023-02-22T15:03:22+08:00"><meta itemprop=name content="从 2019 到 2020,Apache Dubbo 年 [...]
-"><meta itemprop=datePublished content="2020-05-11T00:00:00+00:00"><meta itemprop=dateModified content="2023-02-22T15:03:22+08:00"><meta itemprop=wordCount content="722"><meta itemprop=keywords content="新闻动态,"><meta name=twitter:card content="summary"><meta name=twitter:title content="从 2019 到 2020,Apache Dubbo 年度回顾与总结"><meta name=twitter:description content="通过这篇文章我们将:总结过去一年 Dubbo 社区取得的成绩
+"><meta property="og:type" content="article"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/blog/2020/05/11/%E4%BB%8E-2019-%E5%88%B0-2020apache-dubbo-%E5%B9%B4%E5%BA%A6%E5%9B%9E%E9%A1%BE%E4%B8%8E%E6%80%BB%E7%BB%93/"><meta property="article:section" content="blog"><meta property="article:published_time" content="2020-05-11T00:00:00+00:00"><meta property="article:modified_time" content="2023-08-09T19:18:25+08:00"><meta itemprop=name content="从 2019 到 2020,Apache Dubbo 年 [...]
+"><meta itemprop=datePublished content="2020-05-11T00:00:00+00:00"><meta itemprop=dateModified content="2023-08-09T19:18:25+08:00"><meta itemprop=wordCount content="722"><meta itemprop=keywords content="新闻动态,"><meta name=twitter:card content="summary"><meta name=twitter:title content="从 2019 到 2020,Apache Dubbo 年度回顾与总结"><meta name=twitter:description content="通过这篇文章我们将:总结过去一年 Dubbo 社区取得的成绩
"><script async src="https://www.googletagmanager.com/gtag/js?id=G-NM6FFMT51J"></script>
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="通过这篇文章我们将:总结过去一年 Dubbo 社区取得的成绩
@@ -212,7 +212,7 @@ Dubbo Java 版本的典型服务定义如下:</p><div class=highlight><pre tab
</span></span><span style=display:flex><span><span style=color:#719e07>}</span>
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span>CompletableFuture<span style=color:#719e07><</span>String<span style=color:#719e07>></span> future <span style=color:#719e07>=</span> helloService<span style=color:#719e07>.</span>sayHello<span style=color:#719e07>(</span><span style=color:#2aa198>"world"</span><span style=color:#719e07>);</span>
-</span></span></code></pre></div><p>以上示例都是基于 Java Interface 来描述 Dubbo 服务的,如果要和多语言异构的微服务实现互调,则服务又需要用相应语言的方式重新定义一遍,无法实现跨语言的服务复用;另外跨语言的序列化也是需要注意的一个问题。</p><p>为此 2.7.5 版本引入了对 IDL + Protobuf 的支持,以解决跨语言的服务定义问题,具体可参见示例:</p><p><a href=https://github.com/apache/dubbo-samples/tree/master/3-extensions/serialization/dubbo-samples-protobuf>dubbo-samples-protobuf</a></p><p><img src=/imgs/blog/service-idl.png alt="service idl"></p><p>对 Reactive-style API 的支持则和上面 CompletableFuture 有些类似,允许用户定义 RxJava、Reac [...]
+</span></span></code></pre></div><p>以上示例都是基于 Java Interface 来描述 Dubbo 服务的,如果要和多语言异构的微服务实现互调,则服务又需要用相应语言的方式重新定义一遍,无法实现跨语言的服务复用;另外跨语言的序列化也是需要注意的一个问题。</p><p>为此 2.7.5 版本引入了对 IDL + Protobuf 的支持,以解决跨语言的服务定义问题,具体可参见示例:</p><p><a href=https://github.com/apache/dubbo-samples/tree/master/3-extensions/serialization/dubbo-samples-protobuf>dubbo-samples-protobuf</a></p><p><img src=/imgs/blog/service-idl.png alt="service idl"></p><p>对 Reactive-style API 的支持则和上面 CompletableFuture 有些类似,允许用户定义 RxJava、Reac [...]
</span></span><span style=display:flex><span>dubbo.{config-type}[.{config-id}].{config-item} <span style=color:#2aa198>{config-item-value}</span>
</span></span><span style=display:flex><span><span style=color:#586e75># 服务级别</span>
</span></span><span style=display:flex><span>dubbo.service.{interface-name}[.{method-name}].{config-item} <span style=color:#2aa198>{config-item-value}</span>
diff --git a/zh-cn/blog/integration/index.xml b/zh-cn/blog/integration/index.xml
index 6ad742791ff..160d4d70bc0 100644
--- a/zh-cn/blog/integration/index.xml
+++ b/zh-cn/blog/integration/index.xml
@@ -2774,7 +2774,7 @@ dubbo2.7.3默认开启qos功能,导致一些混部在物理机的dubbo服务
<p>在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么,因此我们需要一套分布式跟踪系统来快速定位问题,Pinpoint可以帮助我们快速定位问题(当然,解决方案也不止这一种)。</p>
<h2 id="什么是pinpoint">什么是Pinpoint</h2>
<blockquote>
-<p>摘自<a href="https://skyao.gitbooks.io/learning-pinpoint/">Pinpoint学习笔记</a></p>
+<p>摘自<a href="https://skyao.gitbooks.io/learning-pinpoint/content/index.html">Pinpoint学习笔记</a></p>
</blockquote>
<p><a href="https://github.com/naver/pinpoint">Pinpoint</a>是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统。
仿照Google Dapper,Pinpoint通过跟踪分布式应用之间的调用来提供解决方案,以帮助分析系统的总体结构和内部模块之间如何相互联系。</p>
diff --git a/zh-cn/blog/java/demos/index.xml b/zh-cn/blog/java/demos/index.xml
index 07050ea966a..8df3cc840ec 100644
--- a/zh-cn/blog/java/demos/index.xml
+++ b/zh-cn/blog/java/demos/index.xml
@@ -1817,7 +1817,7 @@ Dubbo这边有没有集合文档展示和测试功能,能不用写文档就能
<h2 id="示例">示例</h2>
<h3 id="示例-1使用-dubbo-开发-grpc-服务">示例 1,使用 Dubbo 开发 gRPC 服务</h3>
<p><a href="https://grpc.io/">gRPC</a> 是 Google 开源的构建在 HTTP/2 之上的一个 PRC 通信协议。Dubbo 依赖其灵活的协议扩展机制,增加了对 gRPC (HTTP/2) 协议的支持。</p>
-<p>目前的支持限定在 Dubbo Java 语言版本,后续 Go 语言或其他语言版本将会以类似方式提供支持。下面,通过一个<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">简单的示例</a>来演示如何在 Dubbo 中使用 gRPC 协议通信。</p>
+<p>目前的支持限定在 Dubbo Java 语言版本,后续 Go 语言或其他语言版本将会以类似方式提供支持。下面,通过一个<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">简单的示例</a>来演示如何在 Dubbo 中使用 gRPC 协议通信。</p>
<h4 id="1-定义服务-idl">1. 定义服务 IDL</h4>
<p>首先,通过标准的 Protobuf 协议定义服务如下:</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-go" data-lang="go"><span style="display:flex;"><span>syntax = <span style="color:#2aa198">&#34;proto3&#34;</span>;
@@ -2134,7 +2134,7 @@ Dubbo这边有没有集合文档展示和测试功能,能不用写文档就能
</span></span><span style="display:flex;"><span> <span style="color:#268bd2">&lt;/execution&gt;</span>
</span></span><span style="display:flex;"><span> <span style="color:#268bd2">&lt;/executions&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#268bd2">&lt;/plugin&gt;</span>
-</span></span></code></pre></div><p>注意,这里与 <a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">Dubbo 对 gRPC</a> 支持部分的区别在于:
+</span></span></code></pre></div><p>注意,这里与 <a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">Dubbo 对 gRPC</a> 支持部分的区别在于:
<code> &lt;pluginParameter&gt;dubbo&lt;/pluginParameter&gt;</code></p>
<ol start="2">
<li>
diff --git a/zh-cn/blog/news/index.xml b/zh-cn/blog/news/index.xml
index 92144297ea6..39aead827f1 100644
--- a/zh-cn/blog/news/index.xml
+++ b/zh-cn/blog/news/index.xml
@@ -2076,7 +2076,7 @@ Dubbo Java 版本的典型服务定义如下:</p>
<p><img src="https://cn.dubbo.apache.org/imgs/blog/service-idl.png" alt="service idl"></p>
<p>对 Reactive-style API 的支持则和上面 CompletableFuture 有些类似,允许用户定义 RxJava、Reactor API 的服务接口</p>
<p><img src="https://cn.dubbo.apache.org/imgs/blog/idl-dubbo-compiler.png" alt="idl dubbo compiler"></p>
-<p>但是需要注意的一定是,由于外围的 Reactive API 需要有底层传输协议的支持才有意义,因此,目前 Reactive API 只能在使用 gRPC 协议时才有意义,具体请参见示例以及下面关于 ”<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-rxjava">Dubbo 对 gRPC 的支持</a>” 一节的讲解。</p>
+<p>但是需要注意的一定是,由于外围的 Reactive API 需要有底层传输协议的支持才有意义,因此,目前 Reactive API 只能在使用 gRPC 协议时才有意义,具体请参见示例以及下面关于 ”<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-rxjava">Dubbo 对 gRPC 的支持</a>” 一节的讲解。</p>
<h3 id="性能优化">性能优化</h3>
<p>2.7 版本在性能优化方面也做了很多的工作,对 Dubbo 业务系统的吞吐量、调用链路响应速度、服务治理链路性能等都有明显提升。</p>
<ol>
diff --git a/zh-cn/docs/references/protocols/grpc/index.html b/zh-cn/docs/references/protocols/grpc/index.html
index 76b80675bda..391e8ad08e4 100644
--- a/zh-cn/docs/references/protocols/grpc/index.html
+++ b/zh-cn/docs/references/protocols/grpc/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/docs/references/protocols/grpc/><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="width=device-width,initia [...]
+<!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/docs/references/protocols/grpc/><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="width=device-width,initia [...]
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="grpc:// 协议参考手册"><meta property="og:description" content="grpc:// 协议参考手册"><meta name=twitter:description content="grpc:// 协议参考手册"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/docs/references/protocols/grpc/"><meta property="og:title" content="gRPC 协议"><meta name=twitter:title [...]
<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=" [...]
@@ -213,8 +213,8 @@
<label for=m-zh-cndocsreferencesroutersdestination-rule-check><a href=/zh-cn/docs/references/routers/destination-rule/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cndocsreferencesroutersdestination-rule><span>DestinationRule</span></a></label></li></ul></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-zh-cndocsperformance-li><input type=checkbox id=m-zh-cndocsperformance-check>
<label for=m-zh-cndocsperformance-check><a href=/zh-cn/docs/performance/ title="性能优化 & 基准测试" class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-zh-cndocsperformance><span>性能优化</span></a></label><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-zh-cndocsperformancebenchmarking-li><input type=checkbox id=m-zh-cndocsperformancebenchmarking-check>
<label for=m-zh-cndocsperformancebenchmarking-check><a href=/zh-cn/docs/performance/benchmarking/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cndocsperformancebenchmarking><span>基准测试</span></a></label></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-cn/docs/>文档</a></li><li cl [...]
-都可以考虑启用 gRPC 协议。</p><h2 id=支持-grpc-的好处>支持 gRPC 的好处</h2><ul><li>为期望使用 gRPC 协议的用户带来服务治理能力,方便接入 Dubbo 体系</li><li>用户可以使用 Dubbo 风格的,基于接口的编程风格来定义和使用远程服务</li></ul><h2 id=如何在-dubbo-中使用-grpc>如何在 Dubbo 中使用 gRPC</h2><p>大概需要以下步骤:</p><ol><li>使用 IDL 定义服务</li><li>配置 compiler 插件,本地预编译</li><li>配置暴露/引用 Dubbo 服务</li></ol><p>具体可参见以下<a href=https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc>示例</a></p><p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href=https://github.com/ [...]
-<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 [...]
+都可以考虑启用 gRPC 协议。</p><h2 id=支持-grpc-的好处>支持 gRPC 的好处</h2><ul><li>为期望使用 gRPC 协议的用户带来服务治理能力,方便接入 Dubbo 体系</li><li>用户可以使用 Dubbo 风格的,基于接口的编程风格来定义和使用远程服务</li></ul><h2 id=如何在-dubbo-中使用-grpc>如何在 Dubbo 中使用 gRPC</h2><p>大概需要以下步骤:</p><ol><li>使用 IDL 定义服务</li><li>配置 compiler 插件,本地预编译</li><li>配置暴露/引用 Dubbo 服务</li></ol><p>具体可参见以下<a href=https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc>示例</a></p><p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href=https://github.com/apache/ [...]
+<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/docs/references/protocols/gRPC.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+%22front+matter%2 [...]
<a href="https://github.com/apache/dubbo-website/issues/new?title=gRPC%20%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><nav id=TableOfContents><ul><li><a href=#支持-grpc-的好处>支持 gRPC 的好处</a></li><li><a href=#如何在-dubbo-中使用-grpc>如何在 Dubbo 中使用 gRPC</a></li></ul></nav></div></div></div></div><footer class="bg-dark py-5 row d-print-none footer-margin-0"><div class="container-fluid mx-sm-5"><div class=row><div class="col-6 col-sm-4 text-xs-center order-sm-2"><ul class="list-inline mb-0"><li class="l [...]
diff --git a/zh-cn/docs/references/protocols/index.xml b/zh-cn/docs/references/protocols/index.xml
index b922b1e6723..b4bfe3828b8 100644
--- a/zh-cn/docs/references/protocols/index.xml
+++ b/zh-cn/docs/references/protocols/index.xml
@@ -293,8 +293,8 @@
<li>配置 compiler 插件,本地预编译</li>
<li>配置暴露/引用 Dubbo 服务</li>
</ol>
-<p>具体可参见以下<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">示例</a></p>
-<p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>、<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> 编程风格的 API</p></description></item><item><title>Docs: memcached 协议</title><link>https://cn.dubbo.apache.org/zh-cn/docs/references/protocols/memcached/</link><pubDa [...]
+<p>具体可参见以下<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">示例</a></p>
+<p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>、<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> 编程风格的 API</p></description></item><item><title>Docs: memcached 协议</title><link>https://cn.dubbo.apache.org/zh-cn/docs/references/protocols/memcached/</link><pubDate>Mon, 01 Jan [...]
<div class="pageinfo pageinfo-primary">
<p>此文档已经不再维护。您当前查看的是快照版本。如果想要查看最新版本的文档,请参阅<a href="https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/memcached/">最新版本</a>。</p>
</div>
diff --git a/zh-cn/docsv2.7/user/references/protocol/grpc/index.html b/zh-cn/docsv2.7/user/references/protocol/grpc/index.html
index 856b692697c..495288dfc38 100644
--- a/zh-cn/docsv2.7/user/references/protocol/grpc/index.html
+++ b/zh-cn/docsv2.7/user/references/protocol/grpc/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/docsv2.7/user/references/protocol/grpc/><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="width=device-widt [...]
+<!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/docsv2.7/user/references/protocol/grpc/><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="width=device-widt [...]
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="grpc:// 协议参考手册"><meta property="og:description" content="grpc:// 协议参考手册"><meta name=twitter:description content="grpc:// 协议参考手册"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/docsv2.7/user/references/protocol/grpc/"><meta property="og:title" content="gRPC 协议"><meta name=twitt [...]
<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=" [...]
@@ -201,8 +201,8 @@
<label for=m-zh-cndocsv27admininstallredis-check><a href=/zh-cn/docsv2.7/admin/install/redis/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cndocsv27admininstallredis><span>Redis 注册中心安装</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-zh-cndocsv27admininstallzookeeper-li><input type=checkbox id=m-zh-cndocsv27admininstallzookeeper-check>
<label for=m-zh-cndocsv27admininstallzookeeper-check><a href=/zh-cn/docsv2.7/admin/install/zookeeper/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cndocsv27admininstallzookeeper><span>Zookeeper 注册中心安装</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-zh-cndocsv27admininstallmonitor-center-li><input type=checkbox id=m-zh-cndocsv27admininstallmonitor-center-check>
<label for=m-zh-cndocsv27admininstallmonitor-center-check><a href=/zh-cn/docsv2.7/admin/install/monitor-center/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cndocsv27admininstallmonitor-center><span>Simple 监控中心安装</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.a [...]
-都可以考虑启用 gRPC 协议。</p><h2 id=支持-grpc-的好处>支持 gRPC 的好处</h2><ul><li>为期望使用 gRPC 协议的用户带来服务治理能力,方便接入 Dubbo 体系</li><li>用户可以使用 Dubbo 风格的,基于接口的编程风格来定义和使用远程服务</li></ul><h2 id=如何在-dubbo-中使用-grpc>如何在 Dubbo 中使用 gRPC</h2><p>大概需要以下步骤:</p><ol><li>使用 IDL 定义服务</li><li>配置 compiler 插件,本地预编译</li><li>配置暴露/引用 Dubbo 服务</li></ol><p>具体可参见以下<a href=https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc>示例</a></p><p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href=https://github.com/ [...]
-<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 [...]
+都可以考虑启用 gRPC 协议。</p><h2 id=支持-grpc-的好处>支持 gRPC 的好处</h2><ul><li>为期望使用 gRPC 协议的用户带来服务治理能力,方便接入 Dubbo 体系</li><li>用户可以使用 Dubbo 风格的,基于接口的编程风格来定义和使用远程服务</li></ul><h2 id=如何在-dubbo-中使用-grpc>如何在 Dubbo 中使用 gRPC</h2><p>大概需要以下步骤:</p><ol><li>使用 IDL 定义服务</li><li>配置 compiler 插件,本地预编译</li><li>配置暴露/引用 Dubbo 服务</li></ol><p>具体可参见以下<a href=https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc>示例</a></p><p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href=https://github.com/apache/ [...]
+<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/docsv2.7/user/references/protocol/gRPC.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+%22front+ [...]
<a href="https://github.com/apache/dubbo-website/issues/new?title=gRPC%20%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><nav id=TableOfContents><ul><li><a href=#支持-grpc-的好处>支持 gRPC 的好处</a></li><li><a href=#如何在-dubbo-中使用-grpc>如何在 Dubbo 中使用 gRPC</a></li></ul></nav></div></div></div></div><footer class="bg-dark py-5 row d-print-none footer-margin-0"><div class="container-fluid mx-sm-5"><div class=row><div class="col-6 col-sm-4 text-xs-center order-sm-2"><ul class="list-inline mb-0"><li class="l [...]
diff --git a/zh-cn/docsv2.7/user/references/protocol/index.xml b/zh-cn/docsv2.7/user/references/protocol/index.xml
index 5e6e1804492..5c24c07d91b 100644
--- a/zh-cn/docsv2.7/user/references/protocol/index.xml
+++ b/zh-cn/docsv2.7/user/references/protocol/index.xml
@@ -715,8 +715,8 @@
<li>配置 compiler 插件,本地预编译</li>
<li>配置暴露/引用 Dubbo 服务</li>
</ol>
-<p>具体可参见以下<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">示例</a></p>
-<p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>、<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> 编程风格的 API</p></description></item><item><title>Docsv2.7: memcached 协议</title><link>https://cn.dubbo.apache.org/zh-cn/docsv2.7/user/references/protocol/memcached/< [...]
+<p>具体可参见以下<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">示例</a></p>
+<p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>、<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> 编程风格的 API</p></description></item><item><title>Docsv2.7: memcached 协议</title><link>https://cn.dubbo.apache.org/zh-cn/docsv2.7/user/references/protocol/memcached/</link><pubDate [...]
<p>基于 memcached <sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup> 实现的 RPC 协议。</p>
<div class="alert alert-primary" role="alert">
<h4 class="alert-heading">提示</h4>
diff --git a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/grpc/index.html b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/grpc/index.html
index ce254fd1195..493f67e3a2f 100644
--- a/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/grpc/index.html
+++ b/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/grpc/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/grpc/><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/grpc/><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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="gRPC协议"><meta property="og:description" content="gRPC协议"><meta name=twitter:description content="gRPC协议"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/grpc/"><meta property="og:title" content="gRPC协议"><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=" [...]
@@ -673,8 +673,8 @@
<label for=m-zh-cnoverviewreferenceprotocolstriple-check><a href=/zh-cn/overview/reference/protocols/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 [...]
-都可以考虑启用 gRPC 协议。</p><h4 id=支持-grpc-的好处>支持 gRPC 的好处</h4><ul><li>为期望使用 gRPC 协议的用户带来服务治理能力,方便接入 Dubbo 体系</li><li>用户可以使用 Dubbo 风格的,基于接口的编程风格来定义和使用远程服务</li></ul><h2 id=使用场景>使用场景</h2><ul><li>需要立即响应才能继续处理的同步后端微服务到微服务通信。</li><li>需要支持混合编程平台的 Polyglot 环境。</li><li>性能至关重要的低延迟和高吞吐量通信。</li><li>点到点实时通信 - gRPC 无需轮询即可实时推送消息,并且能对双向流式处理提供出色的支持。</li><li>网络受约束环境 - 二进制 gRPC 消息始终小于等效的基于文本的 JSON 消息。</li></ul><h2 id=使用方式>使用方式</h2><h3 id=在-dubbo-中使用-grpc>在 Dubbo 中使用 gRPC</h3><p><a href=https://github.com/apache/d [...]
-<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 [...]
+都可以考虑启用 gRPC 协议。</p><h4 id=支持-grpc-的好处>支持 gRPC 的好处</h4><ul><li>为期望使用 gRPC 协议的用户带来服务治理能力,方便接入 Dubbo 体系</li><li>用户可以使用 Dubbo 风格的,基于接口的编程风格来定义和使用远程服务</li></ul><h2 id=使用场景>使用场景</h2><ul><li>需要立即响应才能继续处理的同步后端微服务到微服务通信。</li><li>需要支持混合编程平台的 Polyglot 环境。</li><li>性能至关重要的低延迟和高吞吐量通信。</li><li>点到点实时通信 - gRPC 无需轮询即可实时推送消息,并且能对双向流式处理提供出色的支持。</li><li>网络受约束环境 - 二进制 gRPC 消息始终小于等效的基于文本的 JSON 消息。</li></ul><h2 id=使用方式>使用方式</h2><h3 id=在-dubbo-中使用-grpc>在 Dubbo 中使用 gRPC</h3><p><a href=https://github.com/apache/d [...]
+<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/grpc.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=gRPC%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><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=#在-dubbo-中使用-grpc>在 Dubbo 中使用 gRPC</a></li><li><a href=#步骤>步骤</a></li></ul></li></ul></nav></div></div></div></div><footer class="bg-dark py-5 row d-print-none footer-margin-0"><div class="container-fluid mx-sm-5"><div class=r [...]
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 51b6677683a..c03eeae0eea 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
@@ -790,7 +790,7 @@ Interface 方式。</p>
</ul>
<h2 id="使用方式">使用方式</h2>
<h3 id="在-dubbo-中使用-grpc">在 Dubbo 中使用 gRPC</h3>
-<p><a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">示例</a></p>
+<p><a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">示例</a></p>
<h3 id="步骤">步骤</h3>
<ol>
<li>使用 IDL 定义服务</li>
@@ -798,7 +798,7 @@ Interface 方式。</p>
<li>配置暴露/引用 Dubbo 服务</li>
</ol>
<blockquote>
-<p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>、<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> 编程风格的 API。</p>
+<p>除了原生 StreamObserver 接口类型之外,Dubbo 还支持 <a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-rxjava">RxJava</a>、<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-reactor">Reactor</a> 编程风格的 API。</p>
</blockquote></description></item><item><title>Overview: HTTP协议</title><link>https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/protocol/http/</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/http/</guid><description>
<h2 id="特性说明">特性说明</h2>
<p>基于 HTTP 表单的远程调用协议,采用 Spring 的 HttpInvoker 实现,<code>2.3.0</code> 以上版本支持。</p>
diff --git a/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/index.xml b/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/index.xml
index 33dd4489dd8..6adb179b410 100644
--- a/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/index.xml
+++ b/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/index.xml
@@ -12,7 +12,7 @@
</ol>
<p>应用配置(可以通过配置文件或者 -D 指定)<code>dubbo.application.register-mode</code> 为 instance(只注册应用级)、all(接口级+应用级均注册)开启全局的注册开关,配置此开关后,默认会向所有的注册中心中注册应用级的地址,供消费端服务发现使用。</p>
<blockquote>
-<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src/main/resources/dubbo.properties">参考示例</a></p>
+<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-provider2/src/main/resources/dubbo.properties">参考示例</a></p>
</blockquote>
<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># 双注册
</span></span><span style="display:flex;"><span>dubbo.application.register-mode=all
@@ -23,7 +23,7 @@
</ol>
<p>注册中心的地址上可以配置 <code>registry-type=service</code> 来显示指定该注册中心为应用级服务发现的注册中心,带上此配置的注册中心将只进行应用级服务发现。</p>
<blockquote>
-<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/dubbo-provider.xml">参考示例</a></p>
+<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/dubbo-provider.xml">参考示例</a></p>
</blockquote>
<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">&lt;dubbo:registry</span> address=<span style="color:#2aa198">&#34;nacos://${nacos.address:127.0.0.1}:8848?registry-type=service&#34;</span><span style="color:#268bd2">/&gt;</span>
</span></span></code></pre></div><h3 id="消费端订阅模式">消费端订阅模式</h3>
@@ -41,7 +41,7 @@ FORCE_APPLICATION:仅应用级订阅,将只采用全新的服务发现模型
<p>应用配置(可以通过配置文件或者 -D 指定)<code>dubbo.application.service-discovery.migration</code> 为 <code>APPLICATION_FIRST</code> 可以开启多订阅模式,配置为 <code>FORCE_APPLICATION</code> 可以强制为仅应用级订阅模式。
具体接口订阅可以在 <code>ReferenceConfig</code> 中的 <code>parameters</code> 中配置 Key 为 <code>migration.step</code>,Value 为 <code>APPLICATION_FIRST</code> 或 <code>FORCE_APPLICATION</code> 的键值对来对单一订阅进行配置。</p>
<blockquote>
-<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java">参考示例</a></p>
+<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java">参考示例</a></p>
</blockquote>
<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>System<span style="color:#719e07">.</span>setProperty<span style="color:#719e07">(</span><span style="color:#2aa198">&#34;dubbo.application.service-discovery.migration&#34;</span><span style="color:#719e07">,</span> <span style="colo [...]
</span></span></code></pre></div><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>ReferenceConfig<span style="color:#719e07">&lt;</span>DemoService<span style="color:#719e07">&gt;</span> referenceConfig <span style="color:#719e07">=</span> <span style="color:#719e07">new&l [...]
@@ -54,7 +54,7 @@ FORCE_APPLICATION:仅应用级订阅,将只采用全新的服务发现模型
</ol>
<p>此配置需要基于配置中心进行推送,Key 为应用名 + <code>.migration</code> (如 <code>demo-application.migraion</code>),Group 为 <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>。规则体配置详见<a href="../migration-service-discovery/">接口级服务发现迁移至应用级服务发现指南</a>。</p>
<blockquote>
-<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/main/java/org/apache/dubbo/demo/consumer/UpgradeUtil.java">参考示例</a></p>
+<p><a href="https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/main/java/org/apache/dubbo/demo/consumer/UpgradeUtil.java">参考示例</a></p>
</blockquote>
<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>step: FORCE_INTERFACE
</span></span></code></pre></div></description></item><item><title>Overview: 接口级服务发现迁移至应用级服务发现指南</title><link>https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/migration-service-discovery/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/migration-service-discovery/</guid><description>
diff --git a/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/index.html b/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/index.html
index 770f6eedf51..4819e40174d 100644
--- a/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/index.html
+++ b/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/service-discovery-samples/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/upgrades-and-compatibility/service-discovery/service-discovery-samples/><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 ch [...]
+<!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/upgrades-and-compatibility/service-discovery/service-discovery-samples/><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 ch [...]
<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.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.css as=style><link href=/scss/main.min.fe7176cbe3102a33d3e8c0c9cec61eb52508abd24a2cc1ae23ccf535a481ffde.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="本文具体说明了用户在升级到 Dubbo 3.0 之后如何快速开启应用级服务发现新特性。"><meta property="og:description" content="本文具体说明了用户在升级到 Dubbo 3.0 之后如何快速开启应用级服务发现新特性。"><meta name=twitter:description content="本文具体说明了用户在升级到 Dubbo 3.0 之后如何快速开启应用级服务发现新特性。"><meta property="og:url" content="https://cn.dubbo.apache.org/zh-cn/overview/mannu [...]
<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=" [...]
@@ -672,23 +672,23 @@
<label for=m-zh-cnoverviewreferenceprotocolstriple-spec-check><a href=/zh-cn/overview/reference/protocols/triple-spec/ title="Triple 协议设计理念与规范" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-zh-cnoverviewreferenceprotocolstriple-spec><span>Triple 协议规范</span></a></label></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-zh-cnoverviewreferenceprotocolstriple-li><input type=checkbox id=m-zh-cnoverviewreferenceprotocolstriple-check>
<label for=m-zh-cnoverviewreferenceprotocolstriple-check><a href=/zh-cn/overview/reference/protocols/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 [...]
+<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 [...]
</span></span><span style=display:flex><span>dubbo.application.register-mode=all
</span></span></code></pre></div><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># 仅应用级注册
</span></span><span style=display:flex><span>dubbo.application.register-mode=instance
-</span></span></code></pre></div><ol start=2><li>注册中心地址参数配置</li></ol><p>注册中心的地址上可以配置 <code>registry-type=service</code> 来显示指定该注册中心为应用级服务发现的注册中心,带上此配置的注册中心将只进行应用级服务发现。</p><blockquote><p><a href=https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/dubbo-provider.xml>参考示例</a></p></blockquote><div class=highlight><pre tabindex=0 style=color:#93a1a1;background-color:#002b36 [...]
+</span></span></code></pre></div><ol start=2><li>注册中心地址参数配置</li></ol><p>注册中心的地址上可以配置 <code>registry-type=service</code> 来显示指定该注册中心为应用级服务发现的注册中心,带上此配置的注册中心将只进行应用级服务发现。</p><blockquote><p><a href=https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-demo-servicediscovery-xml/servicediscovery-provider/src/main/resources/spring/dubbo-provider.xml>参考示例</a></p></blockquote><div class=highlight><pre tabindex=0 style=color:#93a1a1;background-color:#0 [...]
</span></span></code></pre></div><h3 id=消费端订阅模式>消费端订阅模式</h3><p>FORCE_INTERFACE:仅接口级订阅,行为和 Dubbo 2.7 及以前版本一致。
APPLICATION_FIRST:接口级 + 应用级多订阅,如果应用级能订阅到地址就使用应用级的订阅,如果订阅不到地址则使用接口级的订阅,以此保证迁移过程中最大的兼容性。(注:由于存在同时进行订阅的行为,此模式下内存占用会有一定的增长,因此在所有服务端都升级到 Dubbo 3.0 以后建议迁移到 FORCE_APPLICATION 模式降低内存占用)
FORCE_APPLICATION:仅应用级订阅,将只采用全新的服务发现模型。</p><h3 id=消费端配置>消费端配置</h3><ol><li>默认配置(不需要配置)</li></ol><p>升级到 Dubbo 3.0 后默认行为为接口级+应用级多订阅,如果应用级能订阅到地址就使用应用级的订阅,如果订阅不到地址则使用接口级的订阅,以此保证最大的兼容性。</p><ol start=2><li>订阅参数配置</li></ol><p>应用配置(可以通过配置文件或者 -D 指定)<code>dubbo.application.service-discovery.migration</code> 为 <code>APPLICATION_FIRST</code> 可以开启多订阅模式,配置为 <code>FORCE_APPLICATION</code> 可以强制为仅应用级订阅模式。
-具体接口订阅可以在 <code>ReferenceConfig</code> 中的 <code>parameters</code> 中配置 Key 为 <code>migration.step</code>,Value 为 <code>APPLICATION_FIRST</code> 或 <code>FORCE_APPLICATION</code> 的键值对来对单一订阅进行配置。</p><blockquote><p><a href=https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java>参考示例</a></p></blockquote><div class=hig [...]
+具体接口订阅可以在 <code>ReferenceConfig</code> 中的 <code>parameters</code> 中配置 Key 为 <code>migration.step</code>,Value 为 <code>APPLICATION_FIRST</code> 或 <code>FORCE_APPLICATION</code> 的键值对来对单一订阅进行配置。</p><blockquote><p><a href=https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consumer/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConfigIT.java>参考示例</a></p></blockquote><div clas [...]
</span></span></code></pre></div><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>ReferenceConfig<span style=color:#719e07><</span>DemoService<span style=color:#719e07>></span> referenceConfig <span style=color:#719e07>=</span> <span style=color:#719e07>new</span> ReferenceConfig<span style=color:#719e07><>(</span>applicationModel<s [...]
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>setInterface<span style=color:#719e07>(</span>DemoService<span style=color:#719e07>.</span>class<span style=color:#719e07>);</span>
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>setParameters<span style=color:#719e07>(</span><span style=color:#719e07>new</span> HashMap<span style=color:#719e07><>());</span>
</span></span><span style=display:flex><span>referenceConfig<span style=color:#719e07>.</span>getParameters<span style=color:#719e07>().</span>put<span style=color:#719e07>(</span><span style=color:#2aa198>"migration.step"</span><span style=color:#719e07>,</span> mode<span style=color:#719e07>);</span>
</span></span><span style=display:flex><span><span style=color:#719e07>return</span> referenceConfig<span style=color:#719e07>.</span>get<span style=color:#719e07>();</span>
-</span></span></code></pre></div><ol start=3><li>动态配置(优先级最高,可以在运行时修改配置)</li></ol><p>此配置需要基于配置中心进行推送,Key 为应用名 + <code>.migration</code> (如 <code>demo-application.migraion</code>),Group 为 <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>。规则体配置详见<a href=../migration-service-discovery/>接口级服务发现迁移至应用级服务发现指南</a>。</p><blockquote><p><a href=https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-cloud-native/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-consum [...]
+</span></span></code></pre></div><ol start=3><li>动态配置(优先级最高,可以在运行时修改配置)</li></ol><p>此配置需要基于配置中心进行推送,Key 为应用名 + <code>.migration</code> (如 <code>demo-application.migraion</code>),Group 为 <code>DUBBO_SERVICEDISCOVERY_MIGRATION</code>。规则体配置详见<a href=../migration-service-discovery/>接口级服务发现迁移至应用级服务发现指南</a>。</p><blockquote><p><a href=https://github.com/apache/dubbo-samples/blob/master/2-advanced/dubbo-samples-service-discovery/dubbo-servicediscovery-migration/dubbo-servicediscovery-migration-c [...]
</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/upgrades-and-compatibility/service-discovery/service-discovery-samples.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%6 [...]
<a href="https://github.com/apache/dubbo-website/issues/new?title=%e5%ba%94%e7%94%a8%e7%ba%a7%e6%9c%8d%e5%8a%a1%e5%8f%91%e7%8e%b0%e8%bf%81%e7%a7%bb%e7%a4%ba%e4%be%8b" 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><nav id=TableOfContents><ul><li><a href=#开启方式>开启方式</a><ul><li><a href=#服务端>服务端</a></li><li><a href=#消费端>消费端</a></li></ul></li><li><a href=#详细说明>详细说明</a><ul><li><a href=#服务端配置>服务端配置</a></li><li><a href=#消费端订阅模式>消费端订阅模式</a></li><li><a href=#消费端配置>消费端配置</a></li></ul></li></ul></nav></div></div></div></div><footer class="bg-dark py-5 row d-print-none footer-margin-0"><div class [...]
diff --git a/zh-cn/sitemap.xml b/zh-cn/sitemap.xml
index 7f442043170..5ec72774cca 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
diff --git a/zh-cn/tags/java/index.xml b/zh-cn/tags/java/index.xml
index c0d49105920..926845946c9 100644
--- a/zh-cn/tags/java/index.xml
+++ b/zh-cn/tags/java/index.xml
@@ -13521,7 +13521,7 @@ Dubbo这边有没有集合文档展示和测试功能,能不用写文档就能
<h2 id="示例">示例</h2>
<h3 id="示例-1使用-dubbo-开发-grpc-服务">示例 1,使用 Dubbo 开发 gRPC 服务</h3>
<p><a href="https://grpc.io/">gRPC</a> 是 Google 开源的构建在 HTTP/2 之上的一个 PRC 通信协议。Dubbo 依赖其灵活的协议扩展机制,增加了对 gRPC (HTTP/2) 协议的支持。</p>
-<p>目前的支持限定在 Dubbo Java 语言版本,后续 Go 语言或其他语言版本将会以类似方式提供支持。下面,通过一个<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">简单的示例</a>来演示如何在 Dubbo 中使用 gRPC 协议通信。</p>
+<p>目前的支持限定在 Dubbo Java 语言版本,后续 Go 语言或其他语言版本将会以类似方式提供支持。下面,通过一个<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">简单的示例</a>来演示如何在 Dubbo 中使用 gRPC 协议通信。</p>
<h4 id="1-定义服务-idl">1. 定义服务 IDL</h4>
<p>首先,通过标准的 Protobuf 协议定义服务如下:</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-go" data-lang="go"><span style="display:flex;"><span>syntax = <span style="color:#2aa198">&#34;proto3&#34;</span>;
@@ -13838,7 +13838,7 @@ Dubbo这边有没有集合文档展示和测试功能,能不用写文档就能
</span></span><span style="display:flex;"><span> <span style="color:#268bd2">&lt;/execution&gt;</span>
</span></span><span style="display:flex;"><span> <span style="color:#268bd2">&lt;/executions&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#268bd2">&lt;/plugin&gt;</span>
-</span></span></code></pre></div><p>注意,这里与 <a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc">Dubbo 对 gRPC</a> 支持部分的区别在于:
+</span></span></code></pre></div><p>注意,这里与 <a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc">Dubbo 对 gRPC</a> 支持部分的区别在于:
<code> &lt;pluginParameter&gt;dubbo&lt;/pluginParameter&gt;</code></p>
<ol start="2">
<li>
diff --git "a/zh-cn/tags/\346\226\260\351\227\273\345\212\250\346\200\201/index.xml" "b/zh-cn/tags/\346\226\260\351\227\273\345\212\250\346\200\201/index.xml"
index fc1333e8626..dda1b356bc4 100644
--- "a/zh-cn/tags/\346\226\260\351\227\273\345\212\250\346\200\201/index.xml"
+++ "b/zh-cn/tags/\346\226\260\351\227\273\345\212\250\346\200\201/index.xml"
@@ -835,7 +835,7 @@ Dubbo Java 版本的典型服务定义如下:</p>
<p><img src="https://cn.dubbo.apache.org/imgs/blog/service-idl.png" alt="service idl"></p>
<p>对 Reactive-style API 的支持则和上面 CompletableFuture 有些类似,允许用户定义 RxJava、Reactor API 的服务接口</p>
<p><img src="https://cn.dubbo.apache.org/imgs/blog/idl-dubbo-compiler.png" alt="idl dubbo compiler"></p>
-<p>但是需要注意的一定是,由于外围的 Reactive API 需要有底层传输协议的支持才有意义,因此,目前 Reactive API 只能在使用 gRPC 协议时才有意义,具体请参见示例以及下面关于 ”<a href="https://github.com/apache/dubbo-samples/tree/master/3-extensions/protocol/dubbo-samples-grpc/dubbo-samples-rxjava">Dubbo 对 gRPC 的支持</a>” 一节的讲解。</p>
+<p>但是需要注意的一定是,由于外围的 Reactive API 需要有底层传输协议的支持才有意义,因此,目前 Reactive API 只能在使用 gRPC 协议时才有意义,具体请参见示例以及下面关于 ”<a href="https://github.com/apache/dubbo-samples/tree/master/99-integration/dubbo-samples-grpc/dubbo-samples-rxjava">Dubbo 对 gRPC 的支持</a>” 一节的讲解。</p>
<h3 id="性能优化">性能优化</h3>
<p>2.7 版本在性能优化方面也做了很多的工作,对 Dubbo 业务系统的吞吐量、调用链路响应速度、服务治理链路性能等都有明显提升。</p>
<ol>
diff --git "a/zh-cn/tags/\347\224\237\346\200\201/index.xml" "b/zh-cn/tags/\347\224\237\346\200\201/index.xml"
index 18a11253ccc..2e02a48c1e1 100644
--- "a/zh-cn/tags/\347\224\237\346\200\201/index.xml"
+++ "b/zh-cn/tags/\347\224\237\346\200\201/index.xml"
@@ -2727,7 +2727,7 @@ dubbo-storage-service.xml</p>
<p>在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么,因此我们需要一套分布式跟踪系统来快速定位问题,Pinpoint可以帮助我们快速定位问题(当然,解决方案也不止这一种)。</p>
<h2 id="什么是pinpoint">什么是Pinpoint</h2>
<blockquote>
-<p>摘自<a href="https://skyao.gitbooks.io/learning-pinpoint/">Pinpoint学习笔记</a></p>
+<p>摘自<a href="https://skyao.gitbooks.io/learning-pinpoint/content/index.html">Pinpoint学习笔记</a></p>
</blockquote>
<p><a href="https://github.com/naver/pinpoint">Pinpoint</a>是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统。
仿照Google Dapper,Pinpoint通过跟踪分布式应用之间的调用来提供解决方案,以帮助分析系统的总体结构和内部模块之间如何相互联系。</p>