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 2020/08/06 13:10:47 UTC

[dubbo-website] branch asf-site updated: Automated deployment: Thu Aug 6 13:10:38 UTC 2020 1ec6ff4ebd964e64cd4f4ba4d92f8015f29ef76a

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

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


The following commit(s) were added to refs/heads/asf-site by this push:
     new 72fb609  Automated deployment: Thu Aug  6 13:10:38 UTC 2020 1ec6ff4ebd964e64cd4f4ba4d92f8015f29ef76a
72fb609 is described below

commit 72fb6093300089f905fa61a1fcf3d030d988f98e
Author: chickenlj <ch...@users.noreply.github.com>
AuthorDate: Thu Aug 6 13:10:38 2020 +0000

    Automated deployment: Thu Aug  6 13:10:38 UTC 2020 1ec6ff4ebd964e64cd4f4ba4d92f8015f29ef76a
---
 build/blog.js                                                         | 2 +-
 build/blogDetail.js                                                   | 2 +-
 build/community.js                                                    | 4 ++--
 build/documentation.js                                                | 2 +-
 build/ecology.js                                                      | 2 +-
 build/home.js                                                         | 2 +-
 zh-cn/blog/2.7.5-release.html                                         | 2 +-
 zh-cn/blog/Dubbo-supporting-gRPC-HTTP2-and-protobuf.html              | 2 +-
 zh-cn/blog/apache-dubbo-2019-2020.html                                | 2 +-
 zh-cn/blog/apachecon-na-2018.html                                     | 2 +-
 zh-cn/blog/build-new-docker-image-in-dockerhub.html                   | 2 +-
 zh-cn/blog/connect-heterogeneous-microservices.html                   | 2 +-
 zh-cn/blog/download.html                                              | 2 +-
 zh-cn/blog/dubbo-101.html                                             | 2 +-
 zh-cn/blog/dubbo-27-features.html                                     | 2 +-
 zh-cn/blog/dubbo-admin.html                                           | 2 +-
 zh-cn/blog/dubbo-annotation-driven.html                               | 2 +-
 zh-cn/blog/dubbo-annotation.html                                      | 2 +-
 zh-cn/blog/dubbo-basic-usage-dubbo-consumer-configuration.html        | 2 +-
 zh-cn/blog/dubbo-basic-usage-dubbo-provider-configuration.html        | 2 +-
 zh-cn/blog/dubbo-cluster-error-handling.html                          | 2 +-
 zh-cn/blog/dubbo-compatible.html                                      | 2 +-
 zh-cn/blog/dubbo-consistent-hash-implementation.html                  | 2 +-
 zh-cn/blog/dubbo-context-information.html                             | 2 +-
 zh-cn/blog/dubbo-contribute-to-opensource.html                        | 2 +-
 zh-cn/blog/dubbo-copywriting-style.html                               | 2 +-
 zh-cn/blog/dubbo-echo-test.html                                       | 2 +-
 zh-cn/blog/dubbo-externalized-configuration.html                      | 2 +-
 zh-cn/blog/dubbo-fescar.html                                          | 2 +-
 zh-cn/blog/dubbo-generic-invoke.html                                  | 2 +-
 zh-cn/blog/dubbo-gracefully-shutdown.html                             | 2 +-
 zh-cn/blog/dubbo-heartbeat-design.html                                | 2 +-
 zh-cn/blog/dubbo-integrate-with-hystrix.html                          | 2 +-
 zh-cn/blog/dubbo-invoke.html                                          | 2 +-
 zh-cn/blog/dubbo-k8s.html                                             | 2 +-
 zh-cn/blog/dubbo-loadbalance.html                                     | 2 +-
 zh-cn/blog/dubbo-local-call.html                                      | 2 +-
 zh-cn/blog/dubbo-meet-arthas.html                                     | 2 +-
 zh-cn/blog/dubbo-meetup-beijing-may-12th-2018.html                    | 2 +-
 zh-cn/blog/dubbo-meetup-chengdu.html                                  | 2 +-
 zh-cn/blog/dubbo-meetup-hangzhou.html                                 | 2 +-
 zh-cn/blog/dubbo-meetup-shanghai-jun-23rd-2018.html                   | 2 +-
 zh-cn/blog/dubbo-meetup-shenzhen.html                                 | 2 +-
 zh-cn/blog/dubbo-mesh-in-thinking.html                                | 2 +-
 zh-cn/blog/dubbo-mesh-service-mesh-exploring.html                     | 2 +-
 zh-cn/blog/dubbo-network-interfaces.html                              | 2 +-
 zh-cn/blog/dubbo-new-async.html                                       | 2 +-
 zh-cn/blog/dubbo-practice-from-guazi.html                             | 2 +-
 zh-cn/blog/dubbo-protocol.html                                        | 2 +-
 zh-cn/blog/dubbo-registry-nacos-integration.html                      | 2 +-
 zh-cn/blog/dubbo-rest.html                                            | 2 +-
 zh-cn/blog/dubbo-stub-mock.html                                       | 2 +-
 zh-cn/blog/dubbo-zk.html                                              | 2 +-
 zh-cn/blog/dubbo2-js.html                                             | 2 +-
 zh-cn/blog/dubboAsync_client.html                                     | 2 +-
 zh-cn/blog/dubboAsync_server.html                                     | 2 +-
 zh-cn/blog/first-dubbo-filter.html                                    | 2 +-
 zh-cn/blog/gsoc-2018.html                                             | 2 +-
 zh-cn/blog/how-to-involve-dubbo-community.html                        | 2 +-
 zh-cn/blog/index.html                                                 | 2 +-
 zh-cn/blog/introduction-to-dubbo-qos.html                             | 2 +-
 zh-cn/blog/introduction-to-dubbo-spi-2.html                           | 2 +-
 zh-cn/blog/introduction-to-dubbo-spi.html                             | 2 +-
 zh-cn/blog/introduction-to-dubbo-url.html                             | 2 +-
 zh-cn/blog/meet-dubbo.html                                            | 2 +-
 zh-cn/blog/optimization-branch-prediction.html                        | 2 +-
 zh-cn/blog/pinpoint.html                                              | 2 +-
 zh-cn/blog/prepare-an-apache-release.html                             | 2 +-
 zh-cn/blog/qcon-beijing-2018.html                                     | 2 +-
 zh-cn/blog/rpc-introduction.html                                      | 2 +-
 zh-cn/blog/sentinel-introduction-for-dubbo.html                       | 2 +-
 zh-cn/blog/service-and-version.html                                   | 2 +-
 zh-cn/blog/service-test.html                                          | 2 +-
 zh-cn/blog/spring-boot-dubbo-start-stop-analysis.html                 | 2 +-
 zh-cn/blog/test-verification.html                                     | 2 +-
 zh-cn/blog/tracing-with-skywalking.html                               | 2 +-
 zh-cn/blog/use-zipkin-in-dubbo.html                                   | 2 +-
 zh-cn/community/index.html                                            | 2 +-
 zh-cn/docs/admin/README.html                                          | 2 +-
 zh-cn/docs/admin/SUMMARY.html                                         | 2 +-
 zh-cn/docs/admin/install/admin-console.html                           | 2 +-
 zh-cn/docs/admin/install/consumer-demo.html                           | 2 +-
 zh-cn/docs/admin/install/introduction.html                            | 2 +-
 zh-cn/docs/admin/install/provider-demo.html                           | 2 +-
 zh-cn/docs/admin/install/redis.html                                   | 2 +-
 zh-cn/docs/admin/install/simple-monitor-center.html                   | 2 +-
 zh-cn/docs/admin/install/simple-registry-center.html                  | 2 +-
 zh-cn/docs/admin/install/zookeeper.html                               | 2 +-
 zh-cn/docs/admin/introduction.html                                    | 2 +-
 zh-cn/docs/admin/ops/dubbo-ops.html                                   | 2 +-
 zh-cn/docs/admin/ops/introduction.html                                | 2 +-
 zh-cn/docs/admin/ops/pinpoint.html                                    | 2 +-
 zh-cn/docs/admin/ops/skywalking.html                                  | 2 +-
 zh-cn/docs/admin/serviceGovernance.html                               | 2 +-
 zh-cn/docs/admin/serviceSearch.html                                   | 2 +-
 zh-cn/docs/admin/serviceTest.html                                     | 2 +-
 zh-cn/docs/dev/README.html                                            | 2 +-
 zh-cn/docs/dev/SPI.html                                               | 2 +-
 zh-cn/docs/dev/SUMMARY.html                                           | 2 +-
 zh-cn/docs/dev/TCK.html                                               | 2 +-
 zh-cn/docs/dev/build.html                                             | 2 +-
 zh-cn/docs/dev/checklist.html                                         | 2 +-
 zh-cn/docs/dev/code-smell.html                                        | 2 +-
 zh-cn/docs/dev/coding.html                                            | 2 +-
 zh-cn/docs/dev/contract.html                                          | 2 +-
 zh-cn/docs/dev/contribution.html                                      | 2 +-
 zh-cn/docs/dev/design.html                                            | 2 +-
 zh-cn/docs/dev/implementation.html                                    | 2 +-
 zh-cn/docs/dev/impls/cache.html                                       | 2 +-
 zh-cn/docs/dev/impls/cluster.html                                     | 2 +-
 zh-cn/docs/dev/impls/compiler.html                                    | 2 +-
 zh-cn/docs/dev/impls/config-center.html                               | 2 +-
 zh-cn/docs/dev/impls/container.html                                   | 2 +-
 zh-cn/docs/dev/impls/dispatcher.html                                  | 2 +-
 zh-cn/docs/dev/impls/exchanger.html                                   | 2 +-
 zh-cn/docs/dev/impls/exporter-listener.html                           | 2 +-
 zh-cn/docs/dev/impls/extension-factory.html                           | 2 +-
 zh-cn/docs/dev/impls/filter.html                                      | 2 +-
 zh-cn/docs/dev/impls/introduction.html                                | 2 +-
 zh-cn/docs/dev/impls/invoker-listener.html                            | 2 +-
 zh-cn/docs/dev/impls/load-balance.html                                | 2 +-
 zh-cn/docs/dev/impls/logger-adapter.html                              | 2 +-
 zh-cn/docs/dev/impls/merger.html                                      | 2 +-
 zh-cn/docs/dev/impls/monitor.html                                     | 2 +-
 zh-cn/docs/dev/impls/networker.html                                   | 2 +-
 zh-cn/docs/dev/impls/page.html                                        | 2 +-
 zh-cn/docs/dev/impls/protocol.html                                    | 2 +-
 zh-cn/docs/dev/impls/proxy-factory.html                               | 2 +-
 zh-cn/docs/dev/impls/registry.html                                    | 2 +-
 zh-cn/docs/dev/impls/remoting.html                                    | 2 +-
 zh-cn/docs/dev/impls/router.html                                      | 2 +-
 zh-cn/docs/dev/impls/serialize.html                                   | 2 +-
 zh-cn/docs/dev/impls/status-checker.html                              | 2 +-
 zh-cn/docs/dev/impls/telnet-handler.html                              | 2 +-
 zh-cn/docs/dev/impls/threadpool.html                                  | 2 +-
 zh-cn/docs/dev/impls/validation.html                                  | 2 +-
 zh-cn/docs/dev/introduction.html                                      | 2 +-
 zh-cn/docs/dev/principals/code-detail.html                            | 2 +-
 zh-cn/docs/dev/principals/configuration.html                          | 2 +-
 zh-cn/docs/dev/principals/dummy.html                                  | 2 +-
 zh-cn/docs/dev/principals/expansibility.html                          | 2 +-
 zh-cn/docs/dev/principals/extension.html                              | 2 +-
 zh-cn/docs/dev/principals/general-knowledge.html                      | 2 +-
 zh-cn/docs/dev/principals/introduction.html                           | 2 +-
 zh-cn/docs/dev/principals/robustness.html                             | 2 +-
 zh-cn/docs/dev/release.html                                           | 2 +-
 zh-cn/docs/developers/committer-guide/apache-dubbo-page_dev.html      | 2 +-
 zh-cn/docs/developers/committer-guide/label-an-issue-guide_dev.html   | 2 +-
 zh-cn/docs/developers/committer-guide/new-committer-guide_dev.html    | 2 +-
 zh-cn/docs/developers/committer-guide/release-guide_dev.html          | 2 +-
 zh-cn/docs/developers/committer-guide/website-guide_dev.html          | 2 +-
 zh-cn/docs/developers/contributor-guide/become-a-committer_dev.html   | 2 +-
 zh-cn/docs/developers/contributor-guide/cla-signing-guide_dev.html    | 2 +-
 .../docs/developers/contributor-guide/dubbo-extension-guide_dev.html  | 2 +-
 .../contributor-guide/mailing-list-subscription-guide_dev.html        | 2 +-
 .../docs/developers/contributor-guide/new-contributor-guide_dev.html  | 2 +-
 .../developers/contributor-guide/reporting-security-issues_dev.html   | 2 +-
 .../developers/contributor-guide/software-donation-guide_dev.html     | 2 +-
 zh-cn/docs/developers/contributor-guide/test-coverage-guide_dev.html  | 2 +-
 zh-cn/docs/developers/developers_dev.html                             | 2 +-
 zh-cn/docs/developers/guide_dev.html                                  | 2 +-
 zh-cn/docs/developers/user-guide/faq_dev.html                         | 2 +-
 zh-cn/docs/source_code_guide/adaptive-extension.html                  | 2 +-
 zh-cn/docs/source_code_guide/cluster.html                             | 2 +-
 zh-cn/docs/source_code_guide/directory.html                           | 2 +-
 zh-cn/docs/source_code_guide/dubbo-spi.html                           | 2 +-
 zh-cn/docs/source_code_guide/export-service.html                      | 2 +-
 zh-cn/docs/source_code_guide/loadbalance.html                         | 2 +-
 zh-cn/docs/source_code_guide/refer-service.html                       | 2 +-
 zh-cn/docs/source_code_guide/router.html                              | 2 +-
 zh-cn/docs/source_code_guide/service-invoking-process.html            | 2 +-
 zh-cn/docs/user/README.html                                           | 2 +-
 zh-cn/docs/user/SUMMARY.html                                          | 2 +-
 zh-cn/docs/user/benchmark-tool.html                                   | 2 +-
 zh-cn/docs/user/best-practice.html                                    | 2 +-
 zh-cn/docs/user/capacity-plan.html                                    | 2 +-
 zh-cn/docs/user/configuration/annotation.html                         | 2 +-
 zh-cn/docs/user/configuration/api.html                                | 2 +-
 zh-cn/docs/user/configuration/config-center.html                      | 2 +-
 zh-cn/docs/user/configuration/configuration-load-process.html         | 2 +-
 zh-cn/docs/user/configuration/environment-variables.html              | 2 +-
 zh-cn/docs/user/configuration/index.html                              | 2 +-
 zh-cn/docs/user/configuration/properties-deprecated.html              | 2 +-
 zh-cn/docs/user/configuration/properties.html                         | 2 +-
 zh-cn/docs/user/configuration/xml.html                                | 2 +-
 zh-cn/docs/user/coveragence.html                                      | 2 +-
 zh-cn/docs/user/demos/GooglePb-generic-reference.html                 | 2 +-
 zh-cn/docs/user/demos/accesslog.html                                  | 2 +-
 zh-cn/docs/user/demos/async-call-deprecated.html                      | 2 +-
 zh-cn/docs/user/demos/async-call.html                                 | 2 +-
 zh-cn/docs/user/demos/async-execute-on-provider.html                  | 2 +-
 zh-cn/docs/user/demos/attachment.html                                 | 2 +-
 zh-cn/docs/user/demos/auth.html                                       | 2 +-
 zh-cn/docs/user/demos/callback-parameter.html                         | 2 +-
 zh-cn/docs/user/demos/concurrency-control.html                        | 2 +-
 zh-cn/docs/user/demos/config-connections.html                         | 2 +-
 zh-cn/docs/user/demos/config-rule-deprecated.html                     | 2 +-
 zh-cn/docs/user/demos/config-rule.html                                | 2 +-
 zh-cn/docs/user/demos/consumer-threadpool.html                        | 2 +-
 zh-cn/docs/user/demos/context.html                                    | 2 +-
 zh-cn/docs/user/demos/delay-publish.html                              | 2 +-
 zh-cn/docs/user/demos/distributed-transaction.html                    | 2 +-
 zh-cn/docs/user/demos/dump.html                                       | 2 +-
 zh-cn/docs/user/demos/echo-service.html                               | 2 +-
 zh-cn/docs/user/demos/events-notify.html                              | 2 +-
 zh-cn/docs/user/demos/explicit-target.html                            | 2 +-
 zh-cn/docs/user/demos/fault-tolerent-strategy.html                    | 2 +-
 zh-cn/docs/user/demos/generic-reference.html                          | 2 +-
 zh-cn/docs/user/demos/generic-service.html                            | 2 +-
 zh-cn/docs/user/demos/graceful-shutdown.html                          | 2 +-
 zh-cn/docs/user/demos/group-merger.html                               | 2 +-
 zh-cn/docs/user/demos/hostname-binding.html                           | 2 +-
 zh-cn/docs/user/demos/index.html                                      | 2 +-
 zh-cn/docs/user/demos/introduction.html                               | 2 +-
 zh-cn/docs/user/demos/lazy-connect.html                               | 2 +-
 zh-cn/docs/user/demos/loadbalance.html                                | 2 +-
 zh-cn/docs/user/demos/local-call.html                                 | 2 +-
 zh-cn/docs/user/demos/local-mock.html                                 | 2 +-
 zh-cn/docs/user/demos/local-stub.html                                 | 2 +-
 zh-cn/docs/user/demos/logger-strategy.html                            | 2 +-
 zh-cn/docs/user/demos/multi-protocols.html                            | 2 +-
 zh-cn/docs/user/demos/multi-registry.html                             | 2 +-
 zh-cn/docs/user/demos/multi-versions.html                             | 2 +-
 zh-cn/docs/user/demos/netty4.html                                     | 2 +-
 zh-cn/docs/user/demos/parameter-validation.html                       | 2 +-
 zh-cn/docs/user/demos/preflight-check.html                            | 2 +-
 zh-cn/docs/user/demos/protobuf-idl.html                               | 2 +-
 zh-cn/docs/user/demos/reference-config-cache.html                     | 2 +-
 zh-cn/docs/user/demos/registry-only.html                              | 2 +-
 zh-cn/docs/user/demos/result-cache.html                               | 2 +-
 zh-cn/docs/user/demos/routing-rule-deprecated.html                    | 2 +-
 zh-cn/docs/user/demos/routing-rule.html                               | 2 +-
 zh-cn/docs/user/demos/serialization.html                              | 2 +-
 zh-cn/docs/user/demos/service-container.html                          | 2 +-
 zh-cn/docs/user/demos/service-downgrade.html                          | 2 +-
 zh-cn/docs/user/demos/service-group.html                              | 2 +-
 zh-cn/docs/user/demos/set-host.html                                   | 2 +-
 zh-cn/docs/user/demos/simplify-registry-data.html                     | 2 +-
 zh-cn/docs/user/demos/static-service.html                             | 2 +-
 zh-cn/docs/user/demos/stickiness.html                                 | 2 +-
 zh-cn/docs/user/demos/subscribe-only.html                             | 2 +-
 zh-cn/docs/user/demos/thread-model.html                               | 2 +-
 zh-cn/docs/user/demos/tls.html                                        | 2 +-
 zh-cn/docs/user/demos/token-authorization.html                        | 2 +-
 zh-cn/docs/user/dependencies.html                                     | 2 +-
 zh-cn/docs/user/languages/erlang/reference.html                       | 2 +-
 zh-cn/docs/user/languages/erlang/serialization.html                   | 2 +-
 zh-cn/docs/user/languages/erlang/service.html                         | 2 +-
 zh-cn/docs/user/languages/erlang/start.html                           | 2 +-
 zh-cn/docs/user/maturity.html                                         | 2 +-
 zh-cn/docs/user/new-features-in-a-glance.html                         | 2 +-
 zh-cn/docs/user/perf-test.html                                        | 2 +-
 zh-cn/docs/user/preface/architecture.html                             | 2 +-
 zh-cn/docs/user/preface/background.html                               | 2 +-
 zh-cn/docs/user/preface/index.html                                    | 2 +-
 zh-cn/docs/user/preface/requirements.html                             | 2 +-
 zh-cn/docs/user/preface/usage.html                                    | 2 +-
 zh-cn/docs/user/quick-start.html                                      | 2 +-
 zh-cn/docs/user/recommend.html                                        | 2 +-
 zh-cn/docs/user/references/api.html                                   | 2 +-
 zh-cn/docs/user/references/maven.html                                 | 2 +-
 zh-cn/docs/user/references/metadata/introduction.html                 | 2 +-
 zh-cn/docs/user/references/metadata/metadata-redis.html               | 2 +-
 zh-cn/docs/user/references/metadata/metadata-zookeeper.html           | 2 +-
 zh-cn/docs/user/references/protocol/dubbo.html                        | 2 +-
 zh-cn/docs/user/references/protocol/gRPC.html                         | 2 +-
 zh-cn/docs/user/references/protocol/hessian.html                      | 2 +-
 zh-cn/docs/user/references/protocol/http.html                         | 2 +-
 zh-cn/docs/user/references/protocol/introduction.html                 | 2 +-
 zh-cn/docs/user/references/protocol/memcached.html                    | 2 +-
 zh-cn/docs/user/references/protocol/redis.html                        | 2 +-
 zh-cn/docs/user/references/protocol/rest.html                         | 2 +-
 zh-cn/docs/user/references/protocol/rmi.html                          | 2 +-
 zh-cn/docs/user/references/protocol/thrift.html                       | 2 +-
 zh-cn/docs/user/references/protocol/webservice.html                   | 2 +-
 zh-cn/docs/user/references/qos.html                                   | 2 +-
 zh-cn/docs/user/references/registry/introduction.html                 | 2 +-
 zh-cn/docs/user/references/registry/multicast.html                    | 2 +-
 zh-cn/docs/user/references/registry/nacos.html                        | 2 +-
 zh-cn/docs/user/references/registry/redis.html                        | 2 +-
 zh-cn/docs/user/references/registry/simple.html                       | 2 +-
 zh-cn/docs/user/references/registry/zookeeper.html                    | 2 +-
 zh-cn/docs/user/references/telnet.html                                | 2 +-
 zh-cn/docs/user/references/xml/dubbo-application.html                 | 2 +-
 zh-cn/docs/user/references/xml/dubbo-argument.html                    | 2 +-
 zh-cn/docs/user/references/xml/dubbo-config-center.html               | 2 +-
 zh-cn/docs/user/references/xml/dubbo-consumer.html                    | 2 +-
 zh-cn/docs/user/references/xml/dubbo-method.html                      | 2 +-
 zh-cn/docs/user/references/xml/dubbo-module.html                      | 2 +-
 zh-cn/docs/user/references/xml/dubbo-monitor.html                     | 2 +-
 zh-cn/docs/user/references/xml/dubbo-parameter.html                   | 2 +-
 zh-cn/docs/user/references/xml/dubbo-protocol.html                    | 2 +-
 zh-cn/docs/user/references/xml/dubbo-provider.html                    | 2 +-
 zh-cn/docs/user/references/xml/dubbo-reference.html                   | 2 +-
 zh-cn/docs/user/references/xml/dubbo-registry.html                    | 2 +-
 zh-cn/docs/user/references/xml/dubbo-service.html                     | 2 +-
 zh-cn/docs/user/references/xml/introduction.html                      | 2 +-
 zh-cn/docs/user/rest.html                                             | 2 +-
 zh-cn/docs/user/serialization.html                                    | 2 +-
 zh-cn/docs/user/simple-monitor.html                                   | 2 +-
 zh-cn/docs/user/versions/index.html                                   | 2 +-
 zh-cn/docs/user/versions/version-270.html                             | 2 +-
 zh-cn/ecology/index.html                                              | 2 +-
 zh-cn/index.html                                                      | 2 +-
 304 files changed, 305 insertions(+), 305 deletions(-)

diff --git a/build/blog.js b/build/blog.js
index 85eb107..1672c1b 100644
--- a/build/blog.js
+++ b/build/blog.js
@@ -3,4 +3,4 @@
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var u in r)i.call(r,u)&&r[u]&&e.push(u)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},6:function(e,t,n){"use strict";Obj [...]
\ No newline at end of file
+!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var u in r)i.call(r,u)&&r[u]&&e.push(u)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},6:function(e,t,n){"use strict";Obj [...]
\ No newline at end of file
diff --git a/build/blogDetail.js b/build/blogDetail.js
index cb70634..980df57 100644
--- a/build/blogDetail.js
+++ b/build/blogDetail.js
@@ -3,4 +3,4 @@
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var u in r)i.call(r,u)&&r[u]&&e.push(u)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},50:function(e,t,n){"use strict";fu [...]
\ No newline at end of file
+!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var u in r)i.call(r,u)&&r[u]&&e.push(u)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},50:function(e,t,n){"use strict";fu [...]
\ No newline at end of file
diff --git a/build/community.js b/build/community.js
index a2a586e..7e66bc7 100644
--- a/build/community.js
+++ b/build/community.js
@@ -1,6 +1,6 @@
-!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=325 [...]
+!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=325 [...]
   Copyright (c) 2017 Jed Watson.
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var l in r)i.call(r,l)&&r[l]&&e.push(l)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},6:function(e,t,n){"use strict";Obj [...]
\ No newline at end of file
+!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var l in r)i.call(r,l)&&r[l]&&e.push(l)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},6:function(e,t,n){"use strict";Obj [...]
\ No newline at end of file
diff --git a/build/documentation.js b/build/documentation.js
index ed3927a..e8a6f38 100644
--- a/build/documentation.js
+++ b/build/documentation.js
@@ -3,4 +3,4 @@
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var l=n.apply(null,r);l&&e.push(l)}else if("object"===o)for(var s in r)i.call(r,s)&&r[s]&&e.push(s)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},50:function(e,t,n){"use strict";fu [...]
\ No newline at end of file
+!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var l=n.apply(null,r);l&&e.push(l)}else if("object"===o)for(var s in r)i.call(r,s)&&r[s]&&e.push(s)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},50:function(e,t,n){"use strict";fu [...]
\ No newline at end of file
diff --git a/build/ecology.js b/build/ecology.js
index e8c1b5f..1731085 100644
--- a/build/ecology.js
+++ b/build/ecology.js
@@ -5,7 +5,7 @@ return io.isValid=Vt,io.abs=xr,io.add=Pr,io.subtract=Er,io.as=Rr,io.asMillisecon
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var a=typeof r;if("string"===a||"number"===a)e.push(r);else if(Array.isArray(r)&&r.length){var o=n.apply(null,r);o&&e.push(o)}else if("object"===a)for(var i in r)c.call(r,i)&&r[i]&&e.push(i)}}return e.join(" ")}var c={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(a=function(){return n}.apply(t,r))&&(e.exports=a))}()},function(e,t,n){"use strict";Objec [...]
+!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var a=typeof r;if("string"===a||"number"===a)e.push(r);else if(Array.isArray(r)&&r.length){var o=n.apply(null,r);o&&e.push(o)}else if("object"===a)for(var i in r)c.call(r,i)&&r[i]&&e.push(i)}}return e.join(" ")}var c={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(a=function(){return n}.apply(t,r))&&(e.exports=a))}()},function(e,t,n){"use strict";Objec [...]
 //! moment.js locale configuration
 var t=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},n={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d ش [...]
 //! moment.js locale configuration
diff --git a/build/home.js b/build/home.js
index fd41cba..4ceee14 100644
--- a/build/home.js
+++ b/build/home.js
@@ -3,4 +3,4 @@
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var u in r)i.call(r,u)&&r[u]&&e.push(u)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},6:function(e,t,n){"use strict";Obj [...]
\ No newline at end of file
+!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof r;if("string"===o||"number"===o)e.push(r);else if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else if("object"===o)for(var u in r)i.call(r,u)&&r[u]&&e.push(u)}}return e.join(" ")}var i={}.hasOwnProperty;void 0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return n}.apply(t,r))&&(e.exports=o))}()},6:function(e,t,n){"use strict";Obj [...]
\ No newline at end of file
diff --git a/zh-cn/blog/2.7.5-release.html b/zh-cn/blog/2.7.5-release.html
index 006699d..0d98bd4 100644
--- a/zh-cn/blog/2.7.5-release.html
+++ b/zh-cn/blog/2.7.5-release.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>近日,备受瞩目的 Dubbo 2.7.5 版本正式发布,在 2.7.5 版本中,Dubbo 引入了很多新的特性、对现有的很多功能做了增强、同时在性能上也有了非常大的提升,这个版本无论对 Dubbo 社区亦或是开发者来说,都将是一个里程碑式的版本。</p>
 <ul>
 <li>应用粒度服务注册【beta】</li>
diff --git a/zh-cn/blog/Dubbo-supporting-gRPC-HTTP2-and-protobuf.html b/zh-cn/blog/Dubbo-supporting-gRPC-HTTP2-and-protobuf.html
index f315f40..f7a0d30 100644
--- a/zh-cn/blog/Dubbo-supporting-gRPC-HTTP2-and-protobuf.html
+++ b/zh-cn/blog/Dubbo-supporting-gRPC-HTTP2-and-protobuf.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>本文整理自刘军在 Dubbo 成都 meetup 上分享的《Dubbo 在多语言和协议穿透性方向上的探索》。</p>
 <p>本文总体上可分为基础产品简介、Dubbo 对 gRPC (HTTP/2) 和 Protobuf 的支持及示例演示三部分,在简介部分介绍了 Dubbo、HTTP/2、gRPC、Protobuf 的基本概念和特点;第二部分介绍了 Dubbo 为何要支持 gRPC (HTTP/2) 和 Protobuf,以及这种支持为 gRPC 和 Dubbo 开发带来的好处与不同;第三部分通过两个实例分别演示了 Dubbo gRPC 和 Dubbo Protobuf 的使用方式。</p>
 <h2>基本介绍</h2>
diff --git a/zh-cn/blog/apache-dubbo-2019-2020.html b/zh-cn/blog/apache-dubbo-2019-2020.html
index 7076808..efde104 100644
--- a/zh-cn/blog/apache-dubbo-2019-2020.html
+++ b/zh-cn/blog/apache-dubbo-2019-2020.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>非常感谢大家对 Dubbo 社区的关注,通过这篇文章我们将:总结过去一年 Dubbo 社区取得的成绩,包括社区和框架演进两个方面;展望未来 Dubbo 社区和框架的新的规划(roadmap)。社区建设是推动 Dubbo 健康持续发展的一个非常重要的环节,我们需要与社区保持良性的互动、有活跃的贡献者、有积极的富有建设性的讨论,而整个 Dubbo 社区过去一年在这方面都做的不错;在框架演进上,我们主要发布了 2.7.0 - 2.7.5 共 6 个特性版本,功能层面涵盖编程模型、协议、服务治理、性能优化等多个方面;除了已经发布的功能外,我们在 Dubbo 3.0 协议、服务自省和云原生等方向上也做了深入的探索,对这些方向的支持将是 Dubbo 接下来的重要工作方向,希望能通过这篇文章将其中更详细的思考和计划同步给大家。</p>
 <h2>社区回顾</h2>
 <p>回顾 Dubbo 社区过去一年的发展,其中一个重要的节点就是 2019 年 5 月从 Apache 孵化毕业。成为第二个由 Alibaba 捐献后从 Apache 毕业的项目,我有幸参与到了从重启开源、进入 Apache 孵化到毕业的整个过程,社区在此过程中做了大量的工作,包括邮件列表建设、代码规范检查、文档和代码国际化、issue/pr 处理等,这些一方面是 Apache 社区要求的工作,同时也为推动 Dubbo 的发展起到了正面的作用。</p>
diff --git a/zh-cn/blog/apachecon-na-2018.html b/zh-cn/blog/apachecon-na-2018.html
index c499727..5e8847e 100644
--- a/zh-cn/blog/apachecon-na-2018.html
+++ b/zh-cn/blog/apachecon-na-2018.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>罗毅/刘军将在蒙特利尔举办的 ApacheCon 大会上进行题为&quot;Introducing Apache Dubbo(Incubating): What is Dubbo and How it Works&quot;的演讲。请点击<a href="https://apachecon.dukecon.org/acna/2018/#/scheduledEvent/b8db9dc580d85853f">此处</a>查看大会议程,并在<a href="https://www.eventbrite.com/e/apachecon-north-america-2018-registration-43200327342">此处</a>中进行注册。</p>
 </section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a href=" [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/blog/build-new-docker-image-in-dockerhub.html b/zh-cn/blog/build-new-docker-image-in-dockerhub.html
index c8343c9..1015604 100644
--- a/zh-cn/blog/build-new-docker-image-in-dockerhub.html
+++ b/zh-cn/blog/build-new-docker-image-in-dockerhub.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>Dubbo Admin是Dubbo的服务治理中心,提供了大量日常运维所需的服务治理、配置管理等功能。</p>
 <p>Dubbo Admin同时包含了前端代码和后端代码,如果用户需要自己下载源码并编译打包,需要花费一定时间。
 特别是对于一些希望快速调研和试用Dubbo Admin的用户,这种流程的体验并不是很好。</p>
diff --git a/zh-cn/blog/connect-heterogeneous-microservices.html b/zh-cn/blog/connect-heterogeneous-microservices.html
index b67fc5d..e534124 100644
--- a/zh-cn/blog/connect-heterogeneous-microservices.html
+++ b/zh-cn/blog/connect-heterogeneous-microservices.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>从编程开发的角度来说,Dubbo 首先是一款 RPC 服务框架,它最大的优势在于提供了面向接口代理的服务编程模型,对开发者屏蔽了底层的远程通信细节。同时 Dubbo 也是一款服务治理框架,它为分布式部署的微服务提供了服务发现、流量调度等服务治理解决方案。</p>
 <p>在这篇文章中,我们将以以上基础能力为背景,尝试突破 Dubbo 体系自身,探索如何利用 Dubbo 对多协议、多服务发现模型的支持,来实现异构微服务体系间的互联互通。在实际业务场景中,这可以用来解决异构技术体系共存场景下的通信问题,帮助公司实现在异构技术体系间作平滑迁移,解决大规模跨区域、多集群部署场景的地址发现及流量调度等问题。</p>
 <h2>面向接口代理的透明服务开发框架</h2>
diff --git a/zh-cn/blog/download.html b/zh-cn/blog/download.html
index 0adea37..6a20456 100644
--- a/zh-cn/blog/download.html
+++ b/zh-cn/blog/download.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>验证</h2>
 <p>可以按照这里的<a href="https://www.apache.org/info/verification">步骤</a>, 利用<a href="https://www.apache.org/dist/incubator/dubbo/KEYS">KEYS</a>文件来验证下载。</p>
 <h2>Apache Dubbo</h2>
diff --git a/zh-cn/blog/dubbo-101.html b/zh-cn/blog/dubbo-101.html
index bb03a41..b91dc3c 100644
--- a/zh-cn/blog/dubbo-101.html
+++ b/zh-cn/blog/dubbo-101.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>Java RMI 简介</h2>
 <p>Java RMI (Remote Method Invocation)- 远程方法调用,能够让客户端像使用本地调用一样调用服务端 Java 虚拟机中的对象方法。RMI 是面向对象语言领域对 RPC (Remote Procedure Call)的完善,用户无需依靠 IDL 的帮助来完成分布式调用,而是通过依赖接口这种更简单自然的方式。</p>
 <h3>Java RMI 工作原理</h3>
diff --git a/zh-cn/blog/dubbo-27-features.html b/zh-cn/blog/dubbo-27-features.html
index 00b254a..1ec19a3 100644
--- a/zh-cn/blog/dubbo-27-features.html
+++ b/zh-cn/blog/dubbo-27-features.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>1 背景介绍</h2>
 <p>自 2017 年 7 月阿里重启 Dubbo 开源,到目前为止 github star 数,contributor 数都有了非常大的提升。2018 年 2 月 9 日阿里决定将 Dubbo 项目贡献给 Apache,经过一周的投票,顺利成为了 Apache 的孵化项目,也就是大家现在看到的 <strong>Incubator Dubbo</strong>。预计在 2019 年 4 月,Dubbo 可以达成毕业,成为 Apache 的顶级项目。</p>
 <h2>2 分支介绍</h2>
diff --git a/zh-cn/blog/dubbo-admin.html b/zh-cn/blog/dubbo-admin.html
index 27c7421..f83f5ca 100644
--- a/zh-cn/blog/dubbo-admin.html
+++ b/zh-cn/blog/dubbo-admin.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <pre><code>Demo地址:http://47.91.207.147/#/service  
 github: https://github.com/apache/dubbo-ops
 </code></pre>
diff --git a/zh-cn/blog/dubbo-annotation-driven.html b/zh-cn/blog/dubbo-annotation-driven.html
index aaf3b77..5e87075 100644
--- a/zh-cn/blog/dubbo-annotation-driven.html
+++ b/zh-cn/blog/dubbo-annotation-driven.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>注解驱动(Annotation-Driven)</h2>
 <h3><code>@DubboComponentScan</code></h3>
 <h4>起始版本: <code>2.5.7</code></h4>
diff --git a/zh-cn/blog/dubbo-annotation.html b/zh-cn/blog/dubbo-annotation.html
index b871095..819b3fb 100644
--- a/zh-cn/blog/dubbo-annotation.html
+++ b/zh-cn/blog/dubbo-annotation.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>随着微服务架构的广泛地推广和实施。在 Java 生态系统中,以 Spring Boot 和 Spring Cloud 为代表的微服务框架,引入了全新的编程模型,包括:</p>
 <ul>
 <li>注解驱动(Annotation-Driven)</li>
diff --git a/zh-cn/blog/dubbo-basic-usage-dubbo-consumer-configuration.html b/zh-cn/blog/dubbo-basic-usage-dubbo-consumer-configuration.html
index d7b486f..244ea27 100644
--- a/zh-cn/blog/dubbo-basic-usage-dubbo-consumer-configuration.html
+++ b/zh-cn/blog/dubbo-basic-usage-dubbo-consumer-configuration.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>Dubbo Consumer配置</h2>
 <h3>Consumer配置详解</h3>
 <p>配置Dubbo Consumer有3种方式:XML配置,API调用方式配置,注解方式配置。</p>
diff --git a/zh-cn/blog/dubbo-basic-usage-dubbo-provider-configuration.html b/zh-cn/blog/dubbo-basic-usage-dubbo-provider-configuration.html
index dbbc8e0..49b99a3 100644
--- a/zh-cn/blog/dubbo-basic-usage-dubbo-provider-configuration.html
+++ b/zh-cn/blog/dubbo-basic-usage-dubbo-provider-configuration.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>Dubbo基本用法</h2>
 <p>本章节主要讲述如何配置dubbo,按照配置方式上分,可以分为:XML配置,properties方式配置,注解方式配置,API调用方式配置。
 按照功能角度进行划分,可以分为Dubbo Provider和Dubbo Consumer。接下来章节中,分别对dubbo provider和Dubbo consumer进行讲解。</p>
diff --git a/zh-cn/blog/dubbo-cluster-error-handling.html b/zh-cn/blog/dubbo-cluster-error-handling.html
index c9afa63..7a6a6d8 100644
--- a/zh-cn/blog/dubbo-cluster-error-handling.html
+++ b/zh-cn/blog/dubbo-cluster-error-handling.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>在分布式系统中,集群某个某些节点出现问题是大概率事件,因此在设计分布式RPC框架的过程中,必须要把失败作为设计的一等公民来对待。一次调用失败之后,应该如何选择对失败的选择策略,这是一个见仁见智的问题,每种策略可能都有自己独特的应用场景。因此,作为框架来说,应当针对不同场景提供多种策略,供用户进行选择。</p>
 <p>在Dubbo设计中,通过Cluster这个接口的抽象,把一组可供调用的Provider信息组合成为一个统一的<code>Invoker</code>供调用方进行调用。经过路由规则过滤,负载均衡选址后,选中一个具体地址进行调用,如果调用失败,则会按照集群配置的容错策略进行容错处理。</p>
 <p>Dubbo默认内置了若干容错策略,如果不能满足用户需求,则可以通过自定义容错策略进行配置。</p>
diff --git a/zh-cn/blog/dubbo-compatible.html b/zh-cn/blog/dubbo-compatible.html
index 535f7f3..0bd02c0 100644
--- a/zh-cn/blog/dubbo-compatible.html
+++ b/zh-cn/blog/dubbo-compatible.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>Dubbo至加入Apache孵化器以来,一个很强的诉求就是需要rename groupId和package name,这两项工作在项目毕业前需要完成。其中rename package相对来说复杂一些,除了要修改所有类的包名为<code>org.apache.dubbo</code>外,更多的是需要考虑如何老版本的兼容性。</p>
 <p>常见的兼容性包括但不限于以下几种情况:</p>
 <ul>
diff --git a/zh-cn/blog/dubbo-consistent-hash-implementation.html b/zh-cn/blog/dubbo-consistent-hash-implementation.html
index 6ac23bf..5b7e247 100644
--- a/zh-cn/blog/dubbo-consistent-hash-implementation.html
+++ b/zh-cn/blog/dubbo-consistent-hash-implementation.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h3>一、环形队列Hash映射模型</h3>
 <p>这种方案,其基础还是基于取模运算。对2^32取模,那么,Hash值的区间为[0, 2^32-1]。接下来要做的,就包括两部分:</p>
 <h4><strong>a、映射服务</strong></h4>
diff --git a/zh-cn/blog/dubbo-context-information.html b/zh-cn/blog/dubbo-context-information.html
index b3b103d..d43340b 100644
--- a/zh-cn/blog/dubbo-context-information.html
+++ b/zh-cn/blog/dubbo-context-information.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>简介</h2>
 <p>上下文信息是一次 RPC 调用过程中附带的环境信息,如方法名、参数类型、真实参数、本端/对端地址等。这些数据仅属于一次调用,作用于 Consumer 到 Provider 调用的整个流程。</p>
 <p>提供上下文信息是 RPC 框架很重要的一个功能,使用上下文不仅可以为单次调用指定不同配置,还能在此基础上提供强大的上层功能,如分布式链路追踪。其实现原理就是在上下文中维护一个<code>span_id</code>,Consumer 和 Provider 通过传递<code>span_id</code>来连接一次RPC调用,分别上报日志后可以在追踪系统中串联并展示完整的调用流程。这样可以更方便地发现异常,定位问题。</p>
diff --git a/zh-cn/blog/dubbo-contribute-to-opensource.html b/zh-cn/blog/dubbo-contribute-to-opensource.html
index 38fb2a3..29d5674 100644
--- a/zh-cn/blog/dubbo-contribute-to-opensource.html
+++ b/zh-cn/blog/dubbo-contribute-to-opensource.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>Github 上有众多优秀的开源项目,大多数 IT 从业者将其当做了予取予求的工具库,遇到什么需求,先去 Github 搜一把,但有没有想过有一天自己也可以给开源事业做一些贡献呢?本文将会以 dubbo 项目为例,向你阐释,给开源项目做贡献并不是一件难事。</p>
 <h2>1 为何要给开源贡献力量</h2>
 <p>为开源项目做贡献得到的收益是多方面的,为了让你有足够的信心加入到开源项目中,我在文章最开始列举出它的诸多好处。</p>
diff --git a/zh-cn/blog/dubbo-copywriting-style.html b/zh-cn/blog/dubbo-copywriting-style.html
index ffa1492..5e03147 100644
--- a/zh-cn/blog/dubbo-copywriting-style.html
+++ b/zh-cn/blog/dubbo-copywriting-style.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>[TOC]</p>
 <h2>空格</h2>
 <p>「有研究显示,打字的时候不喜欢在中文和英文之间加空格的人,感情路都走得很辛苦,有七成的比例会在 34 岁的时候跟自己不爱的人结婚,而其余三成的人最后只能把遗产留给自己的猫。毕竟爱情跟书写都需要适时地留白。与大家共勉之。」—— <a href="https://github.com/vinta/pangu.js">vinta/paranoid-auto-spacing</a></p>
diff --git a/zh-cn/blog/dubbo-echo-test.html b/zh-cn/blog/dubbo-echo-test.html
index f009b2d..d21efb1 100644
--- a/zh-cn/blog/dubbo-echo-test.html
+++ b/zh-cn/blog/dubbo-echo-test.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>回声测试用于检测服务是否可用。客户端通过 EchoService 来使用回声测试。EchoService 申明如下:</p>
 <pre><code class="language-Java"><span class="hljs-keyword">public</span> <span class="hljs-class"><span class="hljs-keyword">interface</span> <span class="hljs-title">EchoService</span> </span>{
 
diff --git a/zh-cn/blog/dubbo-externalized-configuration.html b/zh-cn/blog/dubbo-externalized-configuration.html
index 774c72f..fa40e53 100644
--- a/zh-cn/blog/dubbo-externalized-configuration.html
+++ b/zh-cn/blog/dubbo-externalized-configuration.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>外部化配置(External Configuration)</h2>
 <p>在<a href="Dubbo-Annotation-Driven.md">Dubbo 注解驱动</a>例子中,无论是服务提供方,还是服务消费方,均需要转配相关配置Bean:</p>
 <pre><code class="language-java">    <span class="hljs-meta">@Bean</span>
diff --git a/zh-cn/blog/dubbo-fescar.html b/zh-cn/blog/dubbo-fescar.html
index 3e6eb51..cfac6b6 100644
--- a/zh-cn/blog/dubbo-fescar.html
+++ b/zh-cn/blog/dubbo-fescar.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>案例</h2>
 <p>用户采购商品业务,整个业务包含3个微服务:</p>
 <ul>
diff --git a/zh-cn/blog/dubbo-generic-invoke.html b/zh-cn/blog/dubbo-generic-invoke.html
index e874d92..c7b1f7e 100644
--- a/zh-cn/blog/dubbo-generic-invoke.html
+++ b/zh-cn/blog/dubbo-generic-invoke.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>以下几种场景可以考虑使用泛化调用:</p>
 <ul>
 <li>服务测试平台</li>
diff --git a/zh-cn/blog/dubbo-gracefully-shutdown.html b/zh-cn/blog/dubbo-gracefully-shutdown.html
index a517a9a..01ffbdb 100644
--- a/zh-cn/blog/dubbo-gracefully-shutdown.html
+++ b/zh-cn/blog/dubbo-gracefully-shutdown.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>背景</h2>
 <p>对于任何一个线上应用,如何在服务更新部署过程中保证客户端无感知是开发者必须要解决的问题,即从应用停止到重启恢复服务这个阶段不能影响正常的业务请求。理想条件下,在没有请求的时候再进行更新是最安全可靠的,然而互联网应用必须要保证可用性,因此在技术层面上优化应用更新流程来保证服务在更新时无损是必要的。</p>
 <p>传统的解决方式是通过将应用更新流程划分为手工摘流量、停应用、更新重启三个步骤,由人工操作实现客户端无对更新感知。这种方式简单而有效,但是限制较多:不仅需要使用借助网关的支持来摘流量,还需要在停应用前人工判断来保证在途请求已经处理完毕。这种需要人工介入的方式运维复杂度较高,只能适用规模较小的应用,无法在大规模系统上使用。</p>
diff --git a/zh-cn/blog/dubbo-heartbeat-design.html b/zh-cn/blog/dubbo-heartbeat-design.html
index e808c41..1615bea 100644
--- a/zh-cn/blog/dubbo-heartbeat-design.html
+++ b/zh-cn/blog/dubbo-heartbeat-design.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h3>1 前言</h3>
 <p>设计一个好的心跳机制并不是一件容易的事,就我所熟知的几个 RPC 框架,它们的心跳机制可以说大相径庭,这篇文章我将探讨一下<strong>如何设计一个优雅的心跳机制,主要从 Dubbo 的现有方案以及一个改进方案来做分析</strong>。</p>
 <h3>2 预备知识</h3>
diff --git a/zh-cn/blog/dubbo-integrate-with-hystrix.html b/zh-cn/blog/dubbo-integrate-with-hystrix.html
index 46e4884..06abef8 100644
--- a/zh-cn/blog/dubbo-integrate-with-hystrix.html
+++ b/zh-cn/blog/dubbo-integrate-with-hystrix.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>背景</h2>
 <p>Hystrix 旨在通过控制那些访问远程系统、服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。Hystrix具备拥有回退机制和断路器功能的线程和信号隔离,请求缓存和请求打包,以及监控和配置等功能。</p>
 <p>Dubbo是Alibaba开源的,目前国内最流行的java rpc框架。</p>
diff --git a/zh-cn/blog/dubbo-invoke.html b/zh-cn/blog/dubbo-invoke.html
index b510ec6..582e1a6 100644
--- a/zh-cn/blog/dubbo-invoke.html
+++ b/zh-cn/blog/dubbo-invoke.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>我们知道,Dubbo 缺省协议采用单一长连接,底层实现是 Netty 的 NIO 异步通讯机制;基于这种机制,Dubbo 实现了以下几种调用方式:</p>
 <ul>
 <li>同步调用</li>
diff --git a/zh-cn/blog/dubbo-k8s.html b/zh-cn/blog/dubbo-k8s.html
index d9fb0b0..ee16bb7 100644
--- a/zh-cn/blog/dubbo-k8s.html
+++ b/zh-cn/blog/dubbo-k8s.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>大体目标</h2>
 <p>Dubbo的provider不再关心服务注册的事宜,只需要把其Dubbo服务端口打开,由Kubernetes来进行服务的声明和发布;Dubbo的consumer在服务发现时直接发现kubernetes的对应服务endpoints,从而复用Dubbo已有的微服务通道能力。好处是无需依赖三方的软负载注册中心;同时无缝融入Kubernetes的多租户安全体系。Demo的代码参照: <a href="https://github.com/dubbo/dubbo-kubernetes">https://github.com/dubbo/dubbo-kubernetes</a></p>
 <h2>闲谈</h2>
diff --git a/zh-cn/blog/dubbo-loadbalance.html b/zh-cn/blog/dubbo-loadbalance.html
index 784adec..54e0296 100644
--- a/zh-cn/blog/dubbo-loadbalance.html
+++ b/zh-cn/blog/dubbo-loadbalance.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>背景</h2>
 <p>Dubbo是一个分布式服务框架,能避免单点故障和支持服务的横向扩容。一个服务通常会部署多个实例。如何从多个服务 Provider 组成的集群中挑选出一个进行调用,就涉及到一个负载均衡的策略。</p>
 <h2>几个概念</h2>
diff --git a/zh-cn/blog/dubbo-local-call.html b/zh-cn/blog/dubbo-local-call.html
index c7b2d8b..fd5a12b 100644
--- a/zh-cn/blog/dubbo-local-call.html
+++ b/zh-cn/blog/dubbo-local-call.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h3>本地调用介绍</h3>
 <p>当一个应用既是一个服务的提供者,同时也是这个服务的消费者的时候,可以直接对本机提供的服务发起本地调用。从 <code>2.2.0</code> 版本开始,Dubbo 默认在本地以 <em>injvm</em> 的方式暴露服务,这样的话,在同一个进程里对这个服务的调用会优先走本地调用。</p>
 <p>与本地对象上方法调用不同的是,Dubbo 本地调用会经过 Filter 链,其中包括了 Consumer 端的 Filter 链以及 Provider 端的 Filter 链。通过这样的机制,本地消费者和其他消费者都是统一对待,统一监控,服务统一进行治理。</p>
diff --git a/zh-cn/blog/dubbo-meet-arthas.html b/zh-cn/blog/dubbo-meet-arthas.html
index 8b990c8..19a4d5e 100644
--- a/zh-cn/blog/dubbo-meet-arthas.html
+++ b/zh-cn/blog/dubbo-meet-arthas.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>Apache Dubbo是Alibaba开源的高性能RPC框架,在国内有非常多的用户。</p>
 <ul>
 <li>Github: <a href="https://github.com/apache/dubbo">https://github.com/apache/dubbo</a></li>
diff --git a/zh-cn/blog/dubbo-meetup-beijing-may-12th-2018.html b/zh-cn/blog/dubbo-meetup-beijing-may-12th-2018.html
index f9efd95..688766a 100644
--- a/zh-cn/blog/dubbo-meetup-beijing-may-12th-2018.html
+++ b/zh-cn/blog/dubbo-meetup-beijing-may-12th-2018.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>首届Dubbo开发者沙龙在北京成功举办, 超过400位开发者参加。这是一个很好的开始!</p>
 <p>分享嘉宾及主体如下:</p>
 <ul>
diff --git a/zh-cn/blog/dubbo-meetup-chengdu.html b/zh-cn/blog/dubbo-meetup-chengdu.html
index a959dad..d987ceb 100644
--- a/zh-cn/blog/dubbo-meetup-chengdu.html
+++ b/zh-cn/blog/dubbo-meetup-chengdu.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p><img src="../../img/blog/meetup-chengdu/all-hands.webp" alt="img"></p>
 <h2>用户深度沟通交流</h2>
 <p>8.26上午10:00-12:00,邀请到货车帮,云图金控,前BBD,飞鱼星四家公司开源爱好者及重度用户参与面对面交流;据参与者反馈,解答了对Dubbo的诸多疑惑,特别是如何参与贡献社区,以及捐献代码所带来的价值点。希望后面可以更加深入参与Dubbo社区及活动中。</p>
diff --git a/zh-cn/blog/dubbo-meetup-hangzhou.html b/zh-cn/blog/dubbo-meetup-hangzhou.html
index 1937b5b..ef1a41c 100644
--- a/zh-cn/blog/dubbo-meetup-hangzhou.html
+++ b/zh-cn/blog/dubbo-meetup-hangzhou.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>第五届Dubbo开发者沙龙在杭州成功举办,</p>
 <p>分享嘉宾</p>
 <ul>
diff --git a/zh-cn/blog/dubbo-meetup-shanghai-jun-23rd-2018.html b/zh-cn/blog/dubbo-meetup-shanghai-jun-23rd-2018.html
index 85af787..92a02a7 100644
--- a/zh-cn/blog/dubbo-meetup-shanghai-jun-23rd-2018.html
+++ b/zh-cn/blog/dubbo-meetup-shanghai-jun-23rd-2018.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>第二届Dubbo开发者沙龙在上海成功举办,超过700位开发者报名,现场参与人数300+,通过阿里云天池、云栖社区、大咖说引导线上直播观看次数10000+</p>
 <p>分享嘉宾及PPT:</p>
 <ul>
diff --git a/zh-cn/blog/dubbo-meetup-shenzhen.html b/zh-cn/blog/dubbo-meetup-shenzhen.html
index bc20014..2cbfa2e 100644
--- a/zh-cn/blog/dubbo-meetup-shenzhen.html
+++ b/zh-cn/blog/dubbo-meetup-shenzhen.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>第三届Dubbo开发者沙龙在深圳成功举办,超过2000位开发者报名,现场参与人数700+,通过阿里云天池、云栖社区、大咖说引导线上直播观看次数17000+</p>
 <p>分享嘉宾</p>
 <ul>
diff --git a/zh-cn/blog/dubbo-mesh-in-thinking.html b/zh-cn/blog/dubbo-mesh-in-thinking.html
index 9821507..88c1a51 100644
--- a/zh-cn/blog/dubbo-mesh-in-thinking.html
+++ b/zh-cn/blog/dubbo-mesh-in-thinking.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>开头</h2>
 <p>Service Mesh这个“热”词是2016年9月被“造”出来,而今年2018年更是被称为service Mesh的关键之年,各家大公司都希望能在这个思潮下领先一步。今天我也分享阿里中间件在这方面的观点,思考和实践。考虑到有些人没了解过Dubbo(集团内以HSF为主)和Servicemesh,先简单介绍下这两个词。Dubbo应该是国内最受欢迎的远程服务框架,在Github上有超过2w的star数,也是阿里分布式架构互联互通的核心所在。跟Dubbo一样,servicemesh也是面向服务互联互通这一问题域,是云原生技术栈的核心之一;大家可以简单理解service mesh就是云原生组织定义的微服务架构解决理念。Dubbo是实现框架,融入service mesh理念就是我们今天分享的。</p>
 <h2>现状和挑战</h2>
diff --git a/zh-cn/blog/dubbo-mesh-service-mesh-exploring.html b/zh-cn/blog/dubbo-mesh-service-mesh-exploring.html
index 5821a19..4320b73 100644
--- a/zh-cn/blog/dubbo-mesh-service-mesh-exploring.html
+++ b/zh-cn/blog/dubbo-mesh-service-mesh-exploring.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p><img src="../../img/blog/meetup-chengdu/all-hands.webp" alt="img"></p>
 <p>近日,在Aliware Open Source•成都站-Apache Dubbo 开发者沙龙上,阿里巴巴中间件高级技术专家李云(至简)向开发者们分享了阿里巴巴中间件团队在Service Mmesh领域的探索和最新实践。本文是根据至简的现场分享所整理,为大家回顾分享中的精彩内容。</p>
 <h2>精彩观点导读</h2>
diff --git a/zh-cn/blog/dubbo-network-interfaces.html b/zh-cn/blog/dubbo-network-interfaces.html
index c985588..83bed2d 100644
--- a/zh-cn/blog/dubbo-network-interfaces.html
+++ b/zh-cn/blog/dubbo-network-interfaces.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>1 如何选择合适的网卡地址</h2>
 <p>可能相当一部分人还不知道我这篇文章到底要讲什么,我说个场景,大家应该就明晰了。在分布式服务调用过程中,以 Dubbo 为例,服务提供者往往需要将自身的 IP 地址上报给注册中心,供消费者去发现。在大多数情况下 Dubbo 都可以正常工作,但如果你留意过 Dubbo 的 github issue,其实有不少人反馈:Dubbo Provider 注册了错误的 IP。如果你能立刻联想到:多网卡、内外网地址共存、VPN、虚拟网卡等关键词,那我建议你一定要继续将本文看下去,因为我也想到了这些,它们都是本文所要探讨的东西!那么“如何选择合适的网卡地址”呢,Dubbo 现有的逻辑到底算不算完备?我们不急着回答它,而是带着这些问题一起进行研究,相信到文末,其中答案,各位看官自有评说。</p>
 <h2>2 Dubbo 是怎么做的</h2>
diff --git a/zh-cn/blog/dubbo-new-async.html b/zh-cn/blog/dubbo-new-async.html
index dfe4335..09295a8 100644
--- a/zh-cn/blog/dubbo-new-async.html
+++ b/zh-cn/blog/dubbo-new-async.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>基于Dubbo实现全异步编程,是在2.7.0版本中对现有异步方式增强后新引入的功能。本文先是回顾2.6.x及之前版本对异步的支持情况及存在的问题,引出了2.7.0版本基于CompletableFuture做了哪些针对性的增强,通过几个示例详细阐述了增强后的异步编程的使用方式,最后总结了引入异步模式带来的新问题及Dubbo的解决方法。通过阅读这篇文章,可以很容易的基于Dubbo2.7.0+版本实现一个全异步的远程服务调用链路。</p>
 <p>从3.0.0版本开始,Dubbo框架提供了对Reactive编程范式的支持,除了编程接口之外,在跨进程的RPC通信中引入了Reactive的语义。如果你所在的环境需要使用Reactive编程范式,或者你的RPC调用需要支持流式传输,Reactive应该会给你带来帮助,具体请参考发布在阿里巴巴中间件公众号上的<a href="">响应式编程支持</a>相关文章。</p>
 <blockquote>
diff --git a/zh-cn/blog/dubbo-practice-from-guazi.html b/zh-cn/blog/dubbo-practice-from-guazi.html
index 18b0058..870ca1f 100644
--- a/zh-cn/blog/dubbo-practice-from-guazi.html
+++ b/zh-cn/blog/dubbo-practice-from-guazi.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>前言</h2>
 <p>  随着瓜子业务的不断发展,系统规模在逐渐扩大,目前在瓜子的私有云上已经运行着数百个dubbo应用,上千个dubbo实例。瓜子各部门业务迅速发展,版本没有来得及统一,各个部门都有自己的用法。随着第二机房的建设,dubbo版本统一的需求变得越发迫切。几个月前,公司发生了一次与dubbo相关的生产事故,成为了公司dubbo版本升级的诱因。</p>
 <p>  接下来,我会从这次事故开始,讲讲我们这段时间所做的dubbo版本升级的历程以及dubbo后续多机房的方案。</p>
diff --git a/zh-cn/blog/dubbo-protocol.html b/zh-cn/blog/dubbo-protocol.html
index ca66ab5..26079fe 100644
--- a/zh-cn/blog/dubbo-protocol.html
+++ b/zh-cn/blog/dubbo-protocol.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>协议是两个网络实体进行通信的基础,数据在网络上从一个实体传输到另一个实体,以字节流的形式传递到对端。在这个字节流的世界里,如果没有协议,就无法将这个一维的字节流重塑成为二维或者多维的数据结构以及领域对象。</p>
 <h3>协议是什么</h3>
 <p>协议是双方确定的交流语义,比如:我们设计一个字符串传输的协议,它允许客户端发送一个字符串,服务端接收到对应的字符串。这个协议很简单,首先发送一个4字节的消息总长度,然后再发送1字节的字符集charset长度,接下来就是消息的payload,字符集名称和字符串正文。</p>
diff --git a/zh-cn/blog/dubbo-registry-nacos-integration.html b/zh-cn/blog/dubbo-registry-nacos-integration.html
index 279419b..e187e89 100644
--- a/zh-cn/blog/dubbo-registry-nacos-integration.html
+++ b/zh-cn/blog/dubbo-registry-nacos-integration.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>Nacos 作为 Dubbo 生态系统中重要的注册中心实现,其中 <a href="https://github.com/apache/dubbo/tree/master/dubbo-registry/dubbo-registry-nacos"><code>dubbo-registry-nacos</code></a> 则是 Dubbo 融合 Nacos 注册中心的实现。</p>
 <h2>预备工作</h2>
 <p>当您将 <a href="https://github.com/apache/dubbo/tree/master/dubbo-registry/dubbo-registry-nacos"><code>dubbo-registry-nacos</code></a> 整合到您的 Dubbo 工程之前,请确保后台已经启动 Nacos 服务。如果您尚且不熟悉 Nacos 的基本使用的话,可先行参考 <a href="https://nacos.io/en-us/docs/quick-start.html">Nacos 快速入门</a>:<a href="https://nacos.io/en-us/docs/quick-start.html%E3%80%82%E5%BB%BA%E8%AE%AE%E4%BD%BF%E7%94%A8">https://nacos.io/en-us/docs/quick-start.html。建议使用</a> Nacos <code>0.6.1</code> 以上的版本。</p>
diff --git a/zh-cn/blog/dubbo-rest.html b/zh-cn/blog/dubbo-rest.html
index 8854d94..8624d64 100644
--- a/zh-cn/blog/dubbo-rest.html
+++ b/zh-cn/blog/dubbo-rest.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>什么是 REST</h2>
 <p>REST 是 Roy Thomas Fielding <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 在 2000 年他的博士论文 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>  “架构风格以及基于网络的软件架构设计” 中提出来的一个概念。REST 是 <strong>RE</strong>presentational <strong>S</strong>tate <strong>T</strong>ransfer 的缩写,翻译过来就是 “表现层状态转化”。REST 就是 Roy 在这篇论文中提出的面向互联网的软件所应当具备的架构风格。</p>
 <p>按照 REpresentational State Transfer 的字面意思,可以把应用看成是一个虚拟的状态机,软件提供的不是服务而是一系列的<strong>资源</strong>,对这些资源的访问通过<strong>统一的操作</strong>来访问,而返回的结果代表了资源状态的一次跃迁。REST 是一种架构风格,如果一个软件架构符合 REST 风格,就可以称之为 RESTful 架构。这个架构应当具备以下一些设计上的约束:资源具有唯一标示、资源之间有关联关系、使用标准的方式来访问、资源有多种表现形式、无状态交互。</p>
diff --git a/zh-cn/blog/dubbo-stub-mock.html b/zh-cn/blog/dubbo-stub-mock.html
index 7f6b822..a9b562c 100644
--- a/zh-cn/blog/dubbo-stub-mock.html
+++ b/zh-cn/blog/dubbo-stub-mock.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>基本概念</h2>
 <p>典型的 RPC 调用客户端是依赖并且只依赖接口编程来进行远程调用的。在真正发起远程调用之前,用户往往需要做一些预处理的工作,比如提前校验参数。在拿到返回调用结果之后,用户可能需要缓存结果,或者是在调用失败的时候构造容错数据,而不是简单的抛出异常。</p>
 <p>这个时候,用户可以编写出类似以下的代码来处理上面提出的这些场景:</p>
diff --git a/zh-cn/blog/dubbo-zk.html b/zh-cn/blog/dubbo-zk.html
index b80c601..c4b8153 100644
--- a/zh-cn/blog/dubbo-zk.html
+++ b/zh-cn/blog/dubbo-zk.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>Zookeeper 介绍</h2>
 <h3>基本概念</h3>
 <p>在现代的分布式应用中,往往会出现节点和节点之间的协调问题,其中就包括了:选主、集群管理、分布式锁、分布式配置管理、统一命名服务、状态同步等诉求。<a href="https://zookeeper.apache.org">Apache Zookeeper</a>,正如它的名字所暗示的那样,<em>动物园管理员</em>,就是为了解决这些诉求的一个分布式协调服务框架。</p>
diff --git a/zh-cn/blog/dubbo2-js.html b/zh-cn/blog/dubbo2-js.html
index 6ba404e..4492101 100644
--- a/zh-cn/blog/dubbo2-js.html
+++ b/zh-cn/blog/dubbo2-js.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <blockquote>
 <p><a href="https://github.com/dubbo/dubbo2.js">dubbo2.js</a> 是 <a href="https://www.qianmi.com/">千米网</a> 贡献给 dubbo 社区的一款 nodejs dubbo 客户端,它提供了 nodejs 对原生 dubbo 协议的支持,使得 nodejs 和 java 这两种异构语言的 rpc 调用变得便捷,高效。</p>
 </blockquote>
diff --git a/zh-cn/blog/dubboAsync_client.html b/zh-cn/blog/dubboAsync_client.html
index 3f135a0..e3f1072 100644
--- a/zh-cn/blog/dubboAsync_client.html
+++ b/zh-cn/blog/dubboAsync_client.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>铺垫</h2>
 <p><img src="../../img/blog/dubboasyn_client/1.png" alt="image | left"></p>
 <p>先简单介绍下一次完整的Dubbo调用所经历的线程阶段。几个信息这里罗列下</p>
diff --git a/zh-cn/blog/dubboAsync_server.html b/zh-cn/blog/dubboAsync_server.html
index 6eb17ae..8f0483b 100644
--- a/zh-cn/blog/dubboAsync_server.html
+++ b/zh-cn/blog/dubboAsync_server.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>铺垫</h2>
 <p>建议先对Dubbo的处理过程中涉及的线程阶段先做个了解,具体可参考<a href="http://dubbo.apache.org/zh-cn/blog/dubboAsync_client.html">Dubbo客户端异步接口的实现背景和使用场景</a>。</p>
 <h2>实现背景</h2>
diff --git a/zh-cn/blog/first-dubbo-filter.html b/zh-cn/blog/first-dubbo-filter.html
index fba9039..fb742a4 100644
--- a/zh-cn/blog/first-dubbo-filter.html
+++ b/zh-cn/blog/first-dubbo-filter.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h3>概述</h3>
 <p>在Dubbo的整体设计中,Filter是一个很重要的概念,包括Dubbo本身的大多数功能,都是基于此扩展点实现的,在每次的调用过程中,Filter的拦截都会被执行。</p>
 <h4>Dubbo Filter的加载机制</h4>
diff --git a/zh-cn/blog/gsoc-2018.html b/zh-cn/blog/gsoc-2018.html
index 1f24c0c..c6488b7 100644
--- a/zh-cn/blog/gsoc-2018.html
+++ b/zh-cn/blog/gsoc-2018.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>谷歌编程之夏会议上2018个项目被宣布, Raghu Reddy 的项目&quot;Apache Dubbo 扩展串行协议支持&quot; 被<a href="https://summerofcode.withgoogle.com/projects/#4747840161579008">接受</a>! 祝贺他!</p>
 </section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a href=" [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/blog/how-to-involve-dubbo-community.html b/zh-cn/blog/how-to-involve-dubbo-community.html
index 63c2b95..813cb38 100644
--- a/zh-cn/blog/how-to-involve-dubbo-community.html
+++ b/zh-cn/blog/how-to-involve-dubbo-community.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p><img src="../../img/blog/involve-dubbo/head.jpg" alt="img"></p>
 <h2>前言</h2>
 <p>本文首次分享是在Apache Dubbo成都meetup上,这个话题是第一次在meetup上讲,不是我们没有更好的话题,相反,我们认为这个话题非常重要,甚至建议这个话题以后每次meetup都要讲。</p>
diff --git a/zh-cn/blog/index.html b/zh-cn/blog/index.html
index 3b084b3..81c7dba 100644
--- a/zh-cn/blog/index.html
+++ b/zh-cn/blog/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blog.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-list-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a tar [...]
+	<div id="root"><div class="blog-list-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a tar [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
 	<script>
diff --git a/zh-cn/blog/introduction-to-dubbo-qos.html b/zh-cn/blog/introduction-to-dubbo-qos.html
index 2da54eb..0aaefdd 100644
--- a/zh-cn/blog/introduction-to-dubbo-qos.html
+++ b/zh-cn/blog/introduction-to-dubbo-qos.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>QoS,全称为<code>Quality of Service</code>, 是常见于网络设备中的一个术语 ,例如在路由器中,可以通过Qos动态的调整和控制某些端口的权重,从而优先的保障运行在这些端口上的服务质量。</p>
 <p>在Dubbo中,QoS这个概念被用于动态的对服务进行查询和控制。例如对获取当前提供和消费的所有服务,以及对服务进行动态的上下线,即从注册中心上进行注册和反注册操作。</p>
 <h2>QoS工作机制</h2>
diff --git a/zh-cn/blog/introduction-to-dubbo-spi-2.html b/zh-cn/blog/introduction-to-dubbo-spi-2.html
index 839ce64..b9132a0 100644
--- a/zh-cn/blog/introduction-to-dubbo-spi-2.html
+++ b/zh-cn/blog/introduction-to-dubbo-spi-2.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>在<a href="./introduction-to-dubbo-spi.md">Dubbo可扩展机制实战</a>中,我们了解了Dubbo扩展机制的一些概念,初探了Dubbo中LoadBalance的实现,并自己实现了一个LoadBalance。是不是觉得Dubbo的扩展机制很不错呀,接下来,我们就深入Dubbo的源码,一睹庐山真面目。</p>
 <h2>ExtensionLoader</h2>
 <p>ExtensionLoader 是最核心的类,负责扩展点的加载和生命周期管理。我们就以这个类开始吧。
diff --git a/zh-cn/blog/introduction-to-dubbo-spi.html b/zh-cn/blog/introduction-to-dubbo-spi.html
index 68fd151..6340fd7 100644
--- a/zh-cn/blog/introduction-to-dubbo-spi.html
+++ b/zh-cn/blog/introduction-to-dubbo-spi.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>1. Dubbo的扩展机制</h2>
 <p>在Dubbo的官网上,Dubbo描述自己是一个高性能的RPC框架。今天我想聊聊Dubbo的另一个很棒的特性, 就是它的可扩展性。
 如同罗马不是一天建成的,任何系统都一定是从小系统不断发展成为大系统的,想要从一开始就把系统设计的足够完善是不可能的,相反的,我们应该关注当下的需求,然后再不断地对系统进行迭代。在代码层面,要求我们适当的对关注点进行抽象和隔离,在软件不断添加功能和特性时,依然能保持良好的结构和可维护性,同时允许第三方开发者对其功能进行扩展。在某些时候,软件设计者对扩展性的追求甚至超过了性能。</p>
diff --git a/zh-cn/blog/introduction-to-dubbo-url.html b/zh-cn/blog/introduction-to-dubbo-url.html
index b3a7b43..12d4145 100644
--- a/zh-cn/blog/introduction-to-dubbo-url.html
+++ b/zh-cn/blog/introduction-to-dubbo-url.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h3>定义</h3>
 <p>在不谈及 dubbo 时,我们大多数人对 URL 这个概念并不会感到陌生。统一资源定位器 (<a href="https://www.ietf.org/rfc/rfc1738.txt">RFC1738</a>――Uniform Resource Locators (URL))应该是最广为人知的一个 RFC 规范,它的定义也非常简单</p>
 <blockquote>
diff --git a/zh-cn/blog/meet-dubbo.html b/zh-cn/blog/meet-dubbo.html
index c1cad43..15e75fb 100644
--- a/zh-cn/blog/meet-dubbo.html
+++ b/zh-cn/blog/meet-dubbo.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>我是一个有Dubbo情节的程序员。</p>
 <p>Dubbo以不同方式,陪伴了我时间不长的整个代码生涯。不久前,通过社区投票,我被选举为<code>Committer</code>。当时我在朋友圈发了一句话,也是贯穿我从开始使用Dubbo、研究Dubbo、贡献Dubbo到最后成为<code>Committer</code>的全过程,一直为我提供内心无与伦比愉悦的源泉:成长这种事,能看见脚印特别幸福。</p>
 <p>今天来个回忆杀,把我和Dubbo的那些事拿出来说说。</p>
diff --git a/zh-cn/blog/optimization-branch-prediction.html b/zh-cn/blog/optimization-branch-prediction.html
index 1847b54..9c49d86 100644
--- a/zh-cn/blog/optimization-branch-prediction.html
+++ b/zh-cn/blog/optimization-branch-prediction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>分支预测</h2>
 <p>在stackoverflow上有一个非常有名的问题:<a href="https://stackoverflow.com/questions/11227809/why-is-it-faster-to-process-a-sorted-array-than-an-unsorted-array">为什么处理有序数组要比非有序数组快?</a>,可见分支预测对代码运行效率有非常大的影响。</p>
 <p>现代CPU都支持分支预测(branch prediction)和指令流水线(instruction pipeline),这两个结合可以极大提高CPU效率。对于像简单的if跳转,CPU是可以比较好地做分支预测的。但是对于switch跳转,CPU则没有太多的办法。switch本质上是据索引,从地址数组里取地址再跳转。</p>
diff --git a/zh-cn/blog/pinpoint.html b/zh-cn/blog/pinpoint.html
index 4ba6a6c..5422e9f 100644
--- a/zh-cn/blog/pinpoint.html
+++ b/zh-cn/blog/pinpoint.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么,因此我们需要一套分布式跟踪系统来快速定位问题,Pinpoint可以帮助我们快速定位问题(当然,解决方案也不止这一种)。</p>
 <h2>什么是Pinpoint(摘自<a href="https://skyao.gitbooks.io/learning-pinpoint/">Pinpoint学习笔记</a>)</h2>
 <p><a href="https://github.com/naver/pinpoint">Pinpoint</a>是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统。
diff --git a/zh-cn/blog/prepare-an-apache-release.html b/zh-cn/blog/prepare-an-apache-release.html
index d92e658..5d55ebb 100644
--- a/zh-cn/blog/prepare-an-apache-release.html
+++ b/zh-cn/blog/prepare-an-apache-release.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>理解Apache发布的内容和流程</h2>
 <p>总的来说,Source Release是Apache关注的重点,也是发布的必须内容;而Binary Release是可选项,Dubbo可以选择是否发布二进制包到Apache仓库或者发布到Maven中央仓库。</p>
 <p>请参考以下链接,找到更多关于ASF的发布指南:</p>
diff --git a/zh-cn/blog/qcon-beijing-2018.html b/zh-cn/blog/qcon-beijing-2018.html
index 1a7bf7b..a472580 100644
--- a/zh-cn/blog/qcon-beijing-2018.html
+++ b/zh-cn/blog/qcon-beijing-2018.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>罗毅在Qcon Beijing 2018上进行了Dubbo开源现状及未来规划的主题演讲。详细内容请查看<a href="https://github.com/dubbo/awesome-dubbo/raw/master/slides/qcon2018/dubbo-present-and-future.pdf">幻灯片</a>。</p>
 </section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a href=" [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/blog/rpc-introduction.html b/zh-cn/blog/rpc-introduction.html
index c39bab4..1da81d7 100644
--- a/zh-cn/blog/rpc-introduction.html
+++ b/zh-cn/blog/rpc-introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>什么是RPC?</h2>
 <p>RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。</p>
 <p>RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。现在业界有很多开源的优秀 RPC 框架,例如 Spring Cloud、Dubbo、Thrift 等。</p>
diff --git a/zh-cn/blog/sentinel-introduction-for-dubbo.html b/zh-cn/blog/sentinel-introduction-for-dubbo.html
index fe6a5d0..3cdad7b 100644
--- a/zh-cn/blog/sentinel-introduction-for-dubbo.html
+++ b/zh-cn/blog/sentinel-introduction-for-dubbo.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>在复杂的生产环境下可能部署着成千上万的 Dubbo 服务实例,流量持续不断地进入,服务之间进行相互调用。但是分布式系统中可能会因流量激增、系统负载过高、网络延迟等一系列问题,导致某些服务不可用,如果不进行相应的控制可能导致级联故障,影响服务的可用性,因此如何对流量进行合理的控制,成为保障服务稳定性的关键。</p>
 <p><a href="https://github.com/alibaba/Sentinel">Sentinel</a> 是阿里中间件团队开源的,面向分布式服务架构的轻量级流量控制产品,主要以流量为切入点,从<strong>流量控制</strong>、<strong>熔断降级</strong>、<strong>系统负载保护</strong>等多个维度来帮助用户保护服务的稳定性。本文将基于 Dubbo,看看 Sentinel 是如何进行流量控制的,并且提供 Dubbo 整合 Sentinel 的最佳实践。</p>
 <h2>快速接入 Sentinel</h2>
diff --git a/zh-cn/blog/service-and-version.html b/zh-cn/blog/service-and-version.html
index c2b4c1b..72dc6ec 100644
--- a/zh-cn/blog/service-and-version.html
+++ b/zh-cn/blog/service-and-version.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>我们在调用Dubbo服务的时候,一般只需要将Consumer端的<code>dubbo:reference</code>指定成服务端中<code>dubbo:service</code>暴露的服务,就可以找到服务端,完成调用,也就是说,Dubbo只需要服务接口信息就可以找到服务提供者。
 其实除了服务提供者以外,Dubbo也有服务分组和版本的概念,在客户端去寻找“匹配”的服务端的时候,需要服务接口,版本号,组别这三个信息都匹配,才算是一个有效的服务端:</p>
 <pre><code class="language-java">   <span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">static</span> <span class="hljs-keyword">boolean</span> <span class="hljs-title">isMatch</span><span class="hljs-params">(URL consumerUrl, URL providerUrl)</span> </span>{
diff --git a/zh-cn/blog/service-test.html b/zh-cn/blog/service-test.html
index f898a5a..37fdb1b 100644
--- a/zh-cn/blog/service-test.html
+++ b/zh-cn/blog/service-test.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>基于Dubbo2.7的元数据,Dubbo Admin实现了服务测试功能,可以通过泛化调用,在控制台上调用真实的服务提供者</p>
 <h2>使用方式</h2>
 <ul>
diff --git a/zh-cn/blog/spring-boot-dubbo-start-stop-analysis.html b/zh-cn/blog/spring-boot-dubbo-start-stop-analysis.html
index 713bb51..d61f411 100644
--- a/zh-cn/blog/spring-boot-dubbo-start-stop-analysis.html
+++ b/zh-cn/blog/spring-boot-dubbo-start-stop-analysis.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>背景介绍</h2>
 <p><a href="https://github.com/apache/dubbo-spring-boot-project">Dubbo Spring Boot</a> 工程致力于简化 Dubbo RPC 框架在Spring Boot应用场景的开发。同时也整合了 Spring Boot 特性:</p>
 <ul>
diff --git a/zh-cn/blog/test-verification.html b/zh-cn/blog/test-verification.html
index aa8e9e1..8aa56b9 100644
--- a/zh-cn/blog/test-verification.html
+++ b/zh-cn/blog/test-verification.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>除了线上常规的使用场景以外,我们在日常使用中还需要一些特定的使用方式,比如对正在开发的功能进行验证测试,比如单独调用某台机器的服务,这篇文章就来介绍一下这些场景下的使用方式。</p>
 <h3>只订阅</h3>
 <p>为方便开发测试,经常会在线下共用一个所有服务可用的注册中心,这时,如果一个正在开发中的服务提供者注册,可能会影响消费者不能正常运行。</p>
diff --git a/zh-cn/blog/tracing-with-skywalking.html b/zh-cn/blog/tracing-with-skywalking.html
index f2531ae..074c8d2 100644
--- a/zh-cn/blog/tracing-with-skywalking.html
+++ b/zh-cn/blog/tracing-with-skywalking.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <h2>Apache Skywalking(Incubator)简介</h2>
 <p><a href="https://github.com/apache/incubator-skywalking">Apache Skywalking(Incubator)</a> 专门为微服务架构和云原生架构系统而设计并且支持分布式链路追踪的APM系统。<a href="https://github.com/apache/incubator-skywalking">Apache Skywalking(Incubator)</a>通过加载探针的方式收集应用调用链路信息,并对采集的调用链路信息进行分析,生成应用间关系和服务间关系以及服务指标。<a href="https://github.com/apache/incubator-skywalking">Apache Skywalking (Incubating)</a>目前支持多种语言,其中包括<a href="https://github.com/apache/incubator-skywalking">Java</a>,<a href="https://github.com/OpenSkywalking/skyw [...]
 <p>目前Skywalking已经支持从6个可视化维度剖析分布式系统的运行情况。总览视图是应用和组件的全局视图,其中包括组件和应用数量,应用的告警波动,慢服务列表以及应用吞吐量;拓扑图从应用依赖关系出发,展现整个应用的拓扑关系;应用视图则是从单个应用的角度,展现应用的上下游关系,TopN的服务和服务器,JVM的相关信息以及对应的主机信息。服务视图关注单个服务入口的运行情况以及此服务的上下游依赖关系,依赖度,帮助用户针对单个服务的优化和监控;调用链展现了调用的单次请求经过的所有埋点以及每个埋点的执行时长;告警视图根据配置阈值针对应用、服务器、服务进行实时告警。</p>
diff --git a/zh-cn/blog/use-zipkin-in-dubbo.html b/zh-cn/blog/use-zipkin-in-dubbo.html
index 22715d3..7aadd22 100644
--- a/zh-cn/blog/use-zipkin-in-dubbo.html
+++ b/zh-cn/blog/use-zipkin-in-dubbo.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/blogDetail.css" />
 </head>
 <body>
-	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
+	<div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a t [...]
 <p>随着业务的发展,应用的规模不断的扩大,传统的应用架构无法满足诉求,服务化架构改造势在必行,以 Dubbo 为代表的分布式服务框架成为了服务化改造架构中的基石。随着微服务理念逐渐被大众接受,应用进一步向更细粒度拆分,并且,不同的应用由不同的开发团队独立负责,整个分布式系统变得十分复杂。没有人能够清晰及时的知道当前系统整体的依赖关系。当出现问题时,也无法及时知道具体是链路上的哪个环节出了问题。</p>
 <p>在这个背景下,Google 发表了 <a href="https://ai.google/research/pubs/pub36356">Dapper</a> 的论文,描述了如何通过一个分布式追踪系统解决上述问题。基于该论文,各大互联网公司实现并部署了自己的分布式追踪系统,其中比较出名的有阿里巴巴的 EagleEye。本文中提到的 Zipkin 是 Twitter 公司开源的分布式追踪系统。下面会详细介绍如何在 Dubbo 中使用 Zipkin 来实现分布式追踪。</p>
 <h2>Zipkin 简介</h2>
diff --git a/zh-cn/community/index.html b/zh-cn/community/index.html
index e4395ff..dc0c3c3 100644
--- a/zh-cn/community/index.html
+++ b/zh-cn/community/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/community.css" />
 </head>
 <body>
-	<div id="root"><div class="community-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a tar [...]
+	<div id="root"><div class="community-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a tar [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
 	<script>
diff --git a/zh-cn/docs/admin/README.html b/zh-cn/docs/admin/README.html
index 127aa56..a2fc556 100644
--- a/zh-cn/docs/admin/README.html
+++ b/zh-cn/docs/admin/README.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/admin/SUMMARY.html b/zh-cn/docs/admin/SUMMARY.html
index dfc5712..0a4fcd3 100644
--- a/zh-cn/docs/admin/SUMMARY.html
+++ b/zh-cn/docs/admin/SUMMARY.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <li><a href="introduction.md">1 Dubbo Admin介绍</a>
 <ul>
 <li><a href="serviceSearch.md">1.1 服务搜索和详情</a></li>
diff --git a/zh-cn/docs/admin/install/admin-console.html b/zh-cn/docs/admin/install/admin-console.html
index a8b4b07..553fbef 100644
--- a/zh-cn/docs/admin/install/admin-console.html
+++ b/zh-cn/docs/admin/install/admin-console.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>目前版本的管理控制台正在开发中,已经完成了服务查询和服务治理的功能,采用前后端分离的模式,具体的安装和使用步骤如下:</p>
 <p>安装:</p>
 <pre><code class="language-sh">git <span class="hljs-built_in">clone</span> https://github.com/apache/dubbo-admin.git /var/tmp/dubbo-admin
diff --git a/zh-cn/docs/admin/install/consumer-demo.html b/zh-cn/docs/admin/install/consumer-demo.html
index a3ede78..f44fa72 100644
--- a/zh-cn/docs/admin/install/consumer-demo.html
+++ b/zh-cn/docs/admin/install/consumer-demo.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>安装:</p>
 <pre><code class="language-sh">git <span class="hljs-built_in">clone</span> https://github.com/apache/dubbo.git
 <span class="hljs-built_in">cd</span> dubbo/dubbo-demo/dubbo-demo-xml
diff --git a/zh-cn/docs/admin/install/introduction.html b/zh-cn/docs/admin/install/introduction.html
index be2e896..6abe7da 100644
--- a/zh-cn/docs/admin/install/introduction.html
+++ b/zh-cn/docs/admin/install/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>你可以只运行 Demo Provider 和 Demo Consumer,它们缺省配置为通过 Multicast  <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 注册中心广播互相发现,建议在不同机器上运行,如果在同一机器上,需设置 <code>unicast=false</code>:即: <code>multicast://224.5.6.7:1234?unicast=false</code>,否则发给消费者的单播消息可能被提供者抢占,两个消费者在同一台机器也一样,只有 multicast 注册中心有此问题。</p>
 <p>你也可以运行多个 Demo Provider 和 Demo Consumer,来验证软负载均衡,Demo Consumer 可以直接启动多个实例,而多个 Demo Provider 因有端口冲突,可在不同机器上运行,或者修改 Demo Provider 安装目录下 <code>conf/dubbo.properties</code> 配置中的 <code>dubbo.protocol.port</code> 的值。</p>
 <p>你也可以增加运行 Simple Monitor 监控中心,它缺省配置为通过 Multicast 注册中心广播发现 Provider 和 Consumer,并展示出它们的依赖关系,以及它们之间调用的次数和时间。</p>
diff --git a/zh-cn/docs/admin/install/provider-demo.html b/zh-cn/docs/admin/install/provider-demo.html
index c0692bd..85c7ec6 100644
--- a/zh-cn/docs/admin/install/provider-demo.html
+++ b/zh-cn/docs/admin/install/provider-demo.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>安装:</p>
 <pre><code class="language-sh">git <span class="hljs-built_in">clone</span> https://github.com/apache/dubbo.git
 <span class="hljs-built_in">cd</span> dubbo/dubbo-demo/dubbo-demo-xml
diff --git a/zh-cn/docs/admin/install/redis.html b/zh-cn/docs/admin/install/redis.html
index c895d0d..0f34cd8 100644
--- a/zh-cn/docs/admin/install/redis.html
+++ b/zh-cn/docs/admin/install/redis.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Redis <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 使用方式参见: <a href="http://dubbo.apache.org/books/dubbo-user-book/references/registry/redis.html">Redis 注册中心参考手册</a>。</p>
 <p>只需搭一个原生的 Redis 服务器,并将<a href="http://dubbo.apache.org/books/dubbo-user-book/quick-start.html">快速启动</a>中 Provider 和 Consumer 里的 <code>conf/dubbo.properties</code> 中的 <code>dubbo.registry.address</code> 的值改为 <code>redis://127.0.0.1:6379</code> 即可使用。</p>
 <p>Redis 注册中心集群 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup> 采用在客户端同时写入多个服务器,读取单个服务器的策略实现。</p>
diff --git a/zh-cn/docs/admin/install/simple-monitor-center.html b/zh-cn/docs/admin/install/simple-monitor-center.html
index 2d8fabc..1d5aba0 100644
--- a/zh-cn/docs/admin/install/simple-monitor-center.html
+++ b/zh-cn/docs/admin/install/simple-monitor-center.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h4>不再单独提供监控中心,功能会整合到运维控制台,基于Metrics提供更丰富,实时的信息展示,敬请期待</h4>
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/docs/admin/install/simple-registry-center.html b/zh-cn/docs/admin/install/simple-registry-center.html
index 93dbce5..fecdef0 100644
--- a/zh-cn/docs/admin/install/simple-registry-center.html
+++ b/zh-cn/docs/admin/install/simple-registry-center.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/admin/install/zookeeper.html b/zh-cn/docs/admin/install/zookeeper.html
index 82e34b3..b822391 100644
--- a/zh-cn/docs/admin/install/zookeeper.html
+++ b/zh-cn/docs/admin/install/zookeeper.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>建议使用 <code>dubbo-2.3.3</code> 以上版本的 zookeeper <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 注册中心客户端。</p>
 <p>Dubbo 未对 Zookeeper 服务器端做任何侵入修改,只需安装原生的 Zookeeper 服务器即可,所有注册中心逻辑适配都在调用 Zookeeper 客户端时完成。</p>
 <p>安装:</p>
diff --git a/zh-cn/docs/admin/introduction.html b/zh-cn/docs/admin/introduction.html
index 3796094..eafd8fc 100644
--- a/zh-cn/docs/admin/introduction.html
+++ b/zh-cn/docs/admin/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>目前的管理控制台已经发布0.1版本,结构上采取了前后端分离的方式,前端使用Vue和Vuetify分别作为Javascript框架和UI框架,后端采用Spring Boot框架。既可以按照标准的Maven方式进行打包,部署,也可以采用前后端分离的部署方式,方便开发,功能上,目前具备了服务查询,服务治理(包括Dubbo2.7中新增的治理规则)以及服务测试三部分内容。</p>
 <h3>Maven方式部署</h3>
 <ul>
diff --git a/zh-cn/docs/admin/ops/dubbo-ops.html b/zh-cn/docs/admin/ops/dubbo-ops.html
index 8bae3ba..bdecb2f 100644
--- a/zh-cn/docs/admin/ops/dubbo-ops.html
+++ b/zh-cn/docs/admin/ops/dubbo-ops.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>搜索页面</h2>
 <p>当你需要管理 Dubbo 的服务时,首先要搜索到这个服务,然后打开它的管理页面</p>
 <p><img src="../sources/images/dubbo-search.jpg" alt="/admin-guide/images/dubbo-search.png"></p>
diff --git a/zh-cn/docs/admin/ops/introduction.html b/zh-cn/docs/admin/ops/introduction.html
index 10b5f70..cb43537 100644
--- a/zh-cn/docs/admin/ops/introduction.html
+++ b/zh-cn/docs/admin/ops/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/admin/ops/pinpoint.html b/zh-cn/docs/admin/ops/pinpoint.html
index 569a7cf..ff75e7e 100644
--- a/zh-cn/docs/admin/ops/pinpoint.html
+++ b/zh-cn/docs/admin/ops/pinpoint.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么,因此我们需要一套分布式跟踪系统来快速定位问题,Pinpoint可以帮助我们快速定位问题(当然,解决方案也不止这一种)。</p>
 <h2>什么是Pinpoint(摘自<a href="https://skyao.gitbooks.io/learning-pinpoint/">Pinpoint学习笔记</a>)</h2>
 <p><a href="https://github.com/naver/pinpoint">Pinpoint</a>是一个开源的 APM (Application Performance Management/应用性能管理)工具,用于基于java的大规模分布式系统。
diff --git a/zh-cn/docs/admin/ops/skywalking.html b/zh-cn/docs/admin/ops/skywalking.html
index d484ba8..67adce6 100644
--- a/zh-cn/docs/admin/ops/skywalking.html
+++ b/zh-cn/docs/admin/ops/skywalking.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>Apache Skywalking(Incubator)简介</h2>
 <p><a href="https://github.com/apache/incubator-skywalking">Apache Skywalking(Incubator)</a> 专门为微服务架构和云原生架构系统而设计并且支持分布式链路追踪的APM系统。<a href="https://github.com/apache/incubator-skywalking">Apache Skywalking(Incubator)</a>通过加载探针的方式收集应用调用链路信息,并对采集的调用链路信息进行分析,生成应用间关系和服务间关系以及服务指标。<a href="https://github.com/apache/incubator-skywalking">Apache Skywalking (Incubating)</a>目前支持多种语言,其中包括<a href="https://github.com/apache/incubator-skywalking">Java</a>,<a href="https://github.com/OpenSkywalking/skyw [...]
 <p>目前Skywalking已经支持从6个可视化维度剖析分布式系统的运行情况。总览视图是应用和组件的全局视图,其中包括组件和应用数量,应用的告警波动,慢服务列表以及应用吞吐量;拓扑图从应用依赖关系出发,展现整个应用的拓扑关系;应用视图则是从单个应用的角度,展现应用的上下游关系,TopN的服务和服务器,JVM的相关信息以及对应的主机信息。服务视图关注单个服务入口的运行情况以及此服务的上下游依赖关系,依赖度,帮助用户针对单个服务的优化和监控;调用链展现了调用的单次请求经过的所有埋点以及每个埋点的执行时长;告警视图根据配置阈值针对应用、服务器、服务进行实时告警。</p>
diff --git a/zh-cn/docs/admin/serviceGovernance.html b/zh-cn/docs/admin/serviceGovernance.html
index 86b0760..9d08cf7 100644
--- a/zh-cn/docs/admin/serviceGovernance.html
+++ b/zh-cn/docs/admin/serviceGovernance.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>服务治理</h2>
 <p>服务治理主要作用是改变运行时服务的行为和选址逻辑,达到限流,权重配置等目的,主要有以下几个功能:</p>
 <h3>应用级别的服务治理</h3>
diff --git a/zh-cn/docs/admin/serviceSearch.html b/zh-cn/docs/admin/serviceSearch.html
index 8d67bda..6e72059 100644
--- a/zh-cn/docs/admin/serviceSearch.html
+++ b/zh-cn/docs/admin/serviceSearch.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>服务查询是Dubbo OPS最基本的功能,目前支持服务,应用和IP三个维度的查询,并且服务和应用支持模糊查询和自动提示:
 <img src="sources/images/searchResult.png" alt="searchResult">
 其中详情页展示了服务提供者,消费者等信息,元数据信息需要在Dubbo2.7及之后的版本才会展示:<br>
diff --git a/zh-cn/docs/admin/serviceTest.html b/zh-cn/docs/admin/serviceTest.html
index defd0bf..c4d3ca0 100644
--- a/zh-cn/docs/admin/serviceTest.html
+++ b/zh-cn/docs/admin/serviceTest.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/dev/README.html b/zh-cn/docs/dev/README.html
index d2f3a3e..c7d1f0e 100644
--- a/zh-cn/docs/dev/README.html
+++ b/zh-cn/docs/dev/README.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/dev/SPI.html b/zh-cn/docs/dev/SPI.html
index 1581565..c8cdc0f 100644
--- a/zh-cn/docs/dev/SPI.html
+++ b/zh-cn/docs/dev/SPI.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展点配置</h2>
 <h3>来源:</h3>
 <p>Dubbo 的扩展点加载从 JDK 标准的 SPI (Service Provider Interface) 扩展点发现机制加强而来。</p>
diff --git a/zh-cn/docs/dev/SUMMARY.html b/zh-cn/docs/dev/SUMMARY.html
index 2c2d4df..8955d79 100644
--- a/zh-cn/docs/dev/SUMMARY.html
+++ b/zh-cn/docs/dev/SUMMARY.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <ul>
 <li><a href="./build.md">1 源码构建</a></li>
 <li><a href="./design.md">2 框架设计</a></li>
diff --git a/zh-cn/docs/dev/TCK.html b/zh-cn/docs/dev/TCK.html
index 4e79d9a..13294b7 100644
--- a/zh-cn/docs/dev/TCK.html
+++ b/zh-cn/docs/dev/TCK.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 的协议,通讯,序列化,注册中心,负载均策等扩展点,都有多种可选策略,以应对不同应用场景,而我们的测试用例很分散,当用户自己需要加一种新的实现时,总是不确定能否满足扩展点的完整契约。</p>
 <p>所以,我们需要对核心扩展点写 <a href="http://en.wikipedia.org/wiki/Technology_Compatibility_Kit">TCK</a> (Technology Compatibility Kit),用户增加一种扩展实现,只需通过 TCK,即可确保与框架的其它部分兼容运行,可以有效提高整体健壮性,也方便第三方扩展者接入,加速开源社区的成熟。</p>
 <p>开源社区的行知同学已着手研究这一块,他的初步想法是借鉴 JBoss 的 CDI-TCK,做一个 Dubbo 的 TCK 基础框架,在此之上实现 Dubbo 的扩展点 TCK 用例。</p>
diff --git a/zh-cn/docs/dev/build.html b/zh-cn/docs/dev/build.html
index 85d9278..4e34f20 100644
--- a/zh-cn/docs/dev/build.html
+++ b/zh-cn/docs/dev/build.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>代码签出</h2>
 <p>通过以下的这个命令签出最新的项目源码 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>:</p>
 <pre><code class="language-sh">git <span class="hljs-built_in">clone</span> https://github.com/apache/dubbo.git dubbo
diff --git a/zh-cn/docs/dev/checklist.html b/zh-cn/docs/dev/checklist.html
index db5ecf3..14f1f77 100644
--- a/zh-cn/docs/dev/checklist.html
+++ b/zh-cn/docs/dev/checklist.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>发布前 checklist</h2>
 <ul>
 <li>jira ticket 过一遍</li>
diff --git a/zh-cn/docs/dev/code-smell.html b/zh-cn/docs/dev/code-smell.html
index e8c0f70..607b192 100644
--- a/zh-cn/docs/dev/code-smell.html
+++ b/zh-cn/docs/dev/code-smell.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>这里记录的是 Dubbo 设计或实现不优雅的地方。</p>
 <h2>URL 转换</h2>
 <h3>1. 点对点暴露和引用服务</h3>
diff --git a/zh-cn/docs/dev/coding.html b/zh-cn/docs/dev/coding.html
index bfdb36d..af28c20 100644
--- a/zh-cn/docs/dev/coding.html
+++ b/zh-cn/docs/dev/coding.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>代码风格</h2>
 <p>Dubbo 的源代码和 JavaDoc 遵循以下的规范:</p>
 <ul>
diff --git a/zh-cn/docs/dev/contract.html b/zh-cn/docs/dev/contract.html
index 8c6dc00..eec4440 100644
--- a/zh-cn/docs/dev/contract.html
+++ b/zh-cn/docs/dev/contract.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>这里记录的是 Dubbo 公共契约,希望所有扩展点遵守。</p>
 <h2>URL</h2>
 <ul>
diff --git a/zh-cn/docs/dev/contribution.html b/zh-cn/docs/dev/contribution.html
index f0408b1..8d7423a 100644
--- a/zh-cn/docs/dev/contribution.html
+++ b/zh-cn/docs/dev/contribution.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>流程</h2>
 <ul>
 <li>如果是扩展功能,直接新增工程,黑盒依赖 Dubbo 进行扩展。</li>
diff --git a/zh-cn/docs/dev/design.html b/zh-cn/docs/dev/design.html
index ae1f617..f3b6e4d 100644
--- a/zh-cn/docs/dev/design.html
+++ b/zh-cn/docs/dev/design.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>整体设计</h2>
 <p><img src="sources/images/dubbo-framework.jpg" alt="/dev-guide/images/dubbo-framework.jpg"></p>
 <p>图例说明:</p>
diff --git a/zh-cn/docs/dev/implementation.html b/zh-cn/docs/dev/implementation.html
index 0c693df..8f5a93e 100644
--- a/zh-cn/docs/dev/implementation.html
+++ b/zh-cn/docs/dev/implementation.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>初始化过程细节</h2>
 <h3>解析服务</h3>
 <p>基于 dubbo.jar 内的 <code>META-INF/spring.handlers</code> 配置,Spring 在遇到 dubbo 名称空间时,会回调 <code>DubboNamespaceHandler</code>。</p>
diff --git a/zh-cn/docs/dev/impls/cache.html b/zh-cn/docs/dev/impls/cache.html
index 7cbb985..b828b3e 100644
--- a/zh-cn/docs/dev/impls/cache.html
+++ b/zh-cn/docs/dev/impls/cache.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>用请求参数作为 key,缓存返回结果。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/cluster.html b/zh-cn/docs/dev/impls/cluster.html
index b6b758b..e914b04 100644
--- a/zh-cn/docs/dev/impls/cluster.html
+++ b/zh-cn/docs/dev/impls/cluster.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>当有多个服务提供方时,将多个服务提供方组织成一个集群,并伪装成一个提供方。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/compiler.html b/zh-cn/docs/dev/impls/compiler.html
index 5dcf139..0415258 100644
--- a/zh-cn/docs/dev/impls/compiler.html
+++ b/zh-cn/docs/dev/impls/compiler.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>Java 代码编译器,用于动态生成字节码,加速调用。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/config-center.html b/zh-cn/docs/dev/impls/config-center.html
index 0dbf283..d2d596b 100644
--- a/zh-cn/docs/dev/impls/config-center.html
+++ b/zh-cn/docs/dev/impls/config-center.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>设计目的</h2>
 <p>配置中心的核心功能是作为Key-Value存储,Dubbo框架告知配置中心其关心的key,配置中心返回该key对应的value值。</p>
 <p>按照应用场景划分,配置中心在Dubbo框架中主要承担以下职责:</p>
diff --git a/zh-cn/docs/dev/impls/container.html b/zh-cn/docs/dev/impls/container.html
index 5690086..35471e6 100644
--- a/zh-cn/docs/dev/impls/container.html
+++ b/zh-cn/docs/dev/impls/container.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>服务容器扩展,用于自定义加载内容。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/dispatcher.html b/zh-cn/docs/dev/impls/dispatcher.html
index 76c2209..9ddeb31 100644
--- a/zh-cn/docs/dev/impls/dispatcher.html
+++ b/zh-cn/docs/dev/impls/dispatcher.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>通道信息派发器,用于指定线程池模型。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/exchanger.html b/zh-cn/docs/dev/impls/exchanger.html
index 427dbdc..7c5b5e3 100644
--- a/zh-cn/docs/dev/impls/exchanger.html
+++ b/zh-cn/docs/dev/impls/exchanger.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>基于传输层之上,实现 Request-Response 信息交换语义。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/exporter-listener.html b/zh-cn/docs/dev/impls/exporter-listener.html
index cb55fec..38fd6cc 100644
--- a/zh-cn/docs/dev/impls/exporter-listener.html
+++ b/zh-cn/docs/dev/impls/exporter-listener.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>当有服务暴露时,触发该事件。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/extension-factory.html b/zh-cn/docs/dev/impls/extension-factory.html
index 9879366..aa6d621 100644
--- a/zh-cn/docs/dev/impls/extension-factory.html
+++ b/zh-cn/docs/dev/impls/extension-factory.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>扩展点本身的加载容器,可从不同容器加载扩展点。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/filter.html b/zh-cn/docs/dev/impls/filter.html
index 00ccb75..9782e56 100644
--- a/zh-cn/docs/dev/impls/filter.html
+++ b/zh-cn/docs/dev/impls/filter.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>服务提供方和服务消费方调用过程拦截,Dubbo 本身的大多功能均基于此扩展点实现,每次远程方法执行,该拦截都会被执行,请注意对性能的影响。</p>
 <p>约定:</p>
diff --git a/zh-cn/docs/dev/impls/introduction.html b/zh-cn/docs/dev/impls/introduction.html
index 99d7b6b..4d89fb6 100644
--- a/zh-cn/docs/dev/impls/introduction.html
+++ b/zh-cn/docs/dev/impls/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>SPI 扩展接口仅用于系统集成,或 Contributor 扩展功能插件。</p>
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/docs/dev/impls/invoker-listener.html b/zh-cn/docs/dev/impls/invoker-listener.html
index c734866..00a3b8d 100644
--- a/zh-cn/docs/dev/impls/invoker-listener.html
+++ b/zh-cn/docs/dev/impls/invoker-listener.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>当有服务引用时,触发该事件。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/load-balance.html b/zh-cn/docs/dev/impls/load-balance.html
index 9691262..715de24 100644
--- a/zh-cn/docs/dev/impls/load-balance.html
+++ b/zh-cn/docs/dev/impls/load-balance.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>从多个服务提者方中选择一个进行调用</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/logger-adapter.html b/zh-cn/docs/dev/impls/logger-adapter.html
index 3fcea7c..ae2bc9e 100644
--- a/zh-cn/docs/dev/impls/logger-adapter.html
+++ b/zh-cn/docs/dev/impls/logger-adapter.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>日志输出适配扩展点。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/merger.html b/zh-cn/docs/dev/impls/merger.html
index 11afcc2..4f01f4e 100644
--- a/zh-cn/docs/dev/impls/merger.html
+++ b/zh-cn/docs/dev/impls/merger.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>合并返回结果,用于分组聚合。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/monitor.html b/zh-cn/docs/dev/impls/monitor.html
index 76fb843..a5cf75e 100644
--- a/zh-cn/docs/dev/impls/monitor.html
+++ b/zh-cn/docs/dev/impls/monitor.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>负责服务调用次和调用时间的监控。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/networker.html b/zh-cn/docs/dev/impls/networker.html
index a0ac0ef..b90467a 100644
--- a/zh-cn/docs/dev/impls/networker.html
+++ b/zh-cn/docs/dev/impls/networker.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>对等网络节点组网器。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/page.html b/zh-cn/docs/dev/impls/page.html
index 854d3d5..be3c1ed 100644
--- a/zh-cn/docs/dev/impls/page.html
+++ b/zh-cn/docs/dev/impls/page.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>对等网络节点组网器。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/protocol.html b/zh-cn/docs/dev/impls/protocol.html
index ff47277..e9aecba 100644
--- a/zh-cn/docs/dev/impls/protocol.html
+++ b/zh-cn/docs/dev/impls/protocol.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>RPC 协议扩展,封装远程调用细节。</p>
 <p>契约:</p>
diff --git a/zh-cn/docs/dev/impls/proxy-factory.html b/zh-cn/docs/dev/impls/proxy-factory.html
index bc9df83..e956a18 100644
--- a/zh-cn/docs/dev/impls/proxy-factory.html
+++ b/zh-cn/docs/dev/impls/proxy-factory.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>将 <code>Invoker</code> 接口转换成业务接口。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/registry.html b/zh-cn/docs/dev/impls/registry.html
index c148d9e..4a83381 100644
--- a/zh-cn/docs/dev/impls/registry.html
+++ b/zh-cn/docs/dev/impls/registry.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>负责服务的注册与发现。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/remoting.html b/zh-cn/docs/dev/impls/remoting.html
index 4aac057..e0e7081 100644
--- a/zh-cn/docs/dev/impls/remoting.html
+++ b/zh-cn/docs/dev/impls/remoting.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>远程通讯的服务器及客户端传输实现。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/router.html b/zh-cn/docs/dev/impls/router.html
index 64e46e7..a9a7b4c 100644
--- a/zh-cn/docs/dev/impls/router.html
+++ b/zh-cn/docs/dev/impls/router.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>从多个服务提供方中选择一个进行调用。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/serialize.html b/zh-cn/docs/dev/impls/serialize.html
index d24a385..c8ccc27 100644
--- a/zh-cn/docs/dev/impls/serialize.html
+++ b/zh-cn/docs/dev/impls/serialize.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>将对象转成字节流,用于网络传输,以及将字节流转为对象,用于在收到字节流数据后还原成对象。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/status-checker.html b/zh-cn/docs/dev/impls/status-checker.html
index 09ac45f..fed714f 100644
--- a/zh-cn/docs/dev/impls/status-checker.html
+++ b/zh-cn/docs/dev/impls/status-checker.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>检查服务依赖各种资源的状态,此状态检查可同时用于 telnet 的 status 命令和 hosting 的 status 页面。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/telnet-handler.html b/zh-cn/docs/dev/impls/telnet-handler.html
index 4de33da..7ad90cd 100644
--- a/zh-cn/docs/dev/impls/telnet-handler.html
+++ b/zh-cn/docs/dev/impls/telnet-handler.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>所有服务器均支持 telnet 访问,用于人工干预。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/threadpool.html b/zh-cn/docs/dev/impls/threadpool.html
index 49865f5..e75b27b 100644
--- a/zh-cn/docs/dev/impls/threadpool.html
+++ b/zh-cn/docs/dev/impls/threadpool.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>服务提供方线程池实现策略,当服务器收到一个请求时,需要在线程池中创建一个线程去执行服务提供方业务逻辑。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/impls/validation.html b/zh-cn/docs/dev/impls/validation.html
index 868a6e7..7576a84 100644
--- a/zh-cn/docs/dev/impls/validation.html
+++ b/zh-cn/docs/dev/impls/validation.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>扩展说明</h2>
 <p>参数验证扩展点。</p>
 <h2>扩展接口</h2>
diff --git a/zh-cn/docs/dev/introduction.html b/zh-cn/docs/dev/introduction.html
index e406662..40c7700 100644
--- a/zh-cn/docs/dev/introduction.html
+++ b/zh-cn/docs/dev/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/dev/principals/code-detail.html b/zh-cn/docs/dev/principals/code-detail.html
index ef0b4e2..d0499c1 100644
--- a/zh-cn/docs/dev/principals/code-detail.html
+++ b/zh-cn/docs/dev/principals/code-detail.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <blockquote>
 <p><a href="http://javatar.iteye.com/blog/1056664">http://javatar.iteye.com/blog/1056664</a></p>
 </blockquote>
diff --git a/zh-cn/docs/dev/principals/configuration.html b/zh-cn/docs/dev/principals/configuration.html
index 081e050..17e3bb4 100644
--- a/zh-cn/docs/dev/principals/configuration.html
+++ b/zh-cn/docs/dev/principals/configuration.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <blockquote>
 <p><a href="http://javatar.iteye.com/blog/949527">http://javatar.iteye.com/blog/949527</a></p>
 </blockquote>
diff --git a/zh-cn/docs/dev/principals/dummy.html b/zh-cn/docs/dev/principals/dummy.html
index c0f9952..5f03394 100644
--- a/zh-cn/docs/dev/principals/dummy.html
+++ b/zh-cn/docs/dev/principals/dummy.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <blockquote>
 <p><a href="http://javatar.iteye.com/blog/804187">http://javatar.iteye.com/blog/804187</a></p>
 </blockquote>
diff --git a/zh-cn/docs/dev/principals/expansibility.html b/zh-cn/docs/dev/principals/expansibility.html
index 32de606..c876dda 100644
--- a/zh-cn/docs/dev/principals/expansibility.html
+++ b/zh-cn/docs/dev/principals/expansibility.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <blockquote>
 <p><a href="http://javatar.iteye.com/blog/690845">http://javatar.iteye.com/blog/690845</a></p>
 </blockquote>
diff --git a/zh-cn/docs/dev/principals/extension.html b/zh-cn/docs/dev/principals/extension.html
index 8c880a3..8b4bd7c 100644
--- a/zh-cn/docs/dev/principals/extension.html
+++ b/zh-cn/docs/dev/principals/extension.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <blockquote>
 <p><a href="http://javatar.iteye.com/blog/1041832">http://javatar.iteye.com/blog/1041832</a></p>
 </blockquote>
diff --git a/zh-cn/docs/dev/principals/general-knowledge.html b/zh-cn/docs/dev/principals/general-knowledge.html
index a60a235..9bab5cd 100644
--- a/zh-cn/docs/dev/principals/general-knowledge.html
+++ b/zh-cn/docs/dev/principals/general-knowledge.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <blockquote>
 <p><a href="http://javatar.iteye.com/blog/706098">http://javatar.iteye.com/blog/706098</a></p>
 </blockquote>
diff --git a/zh-cn/docs/dev/principals/introduction.html b/zh-cn/docs/dev/principals/introduction.html
index 00f7901..f240b3d 100644
--- a/zh-cn/docs/dev/principals/introduction.html
+++ b/zh-cn/docs/dev/principals/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>本章节的设计原则摘录自梁飞在 javaeye 上发表的系列文章。</p>
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/docs/dev/principals/robustness.html b/zh-cn/docs/dev/principals/robustness.html
index 8cee2c2..139c01a 100644
--- a/zh-cn/docs/dev/principals/robustness.html
+++ b/zh-cn/docs/dev/principals/robustness.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <blockquote>
 <p><a href="http://oldratlee.com/380/tech/java/robustness-of-implement.html">http://oldratlee.com/380/tech/java/robustness-of-implement.html</a></p>
 </blockquote>
diff --git a/zh-cn/docs/dev/release.html b/zh-cn/docs/dev/release.html
index 3f48c39..041d26c 100644
--- a/zh-cn/docs/dev/release.html
+++ b/zh-cn/docs/dev/release.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><strong>新功能的开发</strong> 和 <strong>稳定性的提高</strong> 对产品都很重要。但是添加新功能会影响稳定性,Dubbo 使用如下的版本开发模式来保障两者。</p>
 <h2>2 个版本并行开发</h2>
 <ul>
diff --git a/zh-cn/docs/developers/committer-guide/apache-dubbo-page_dev.html b/zh-cn/docs/developers/committer-guide/apache-dubbo-page_dev.html
index 5248a8a..11dcde0 100644
--- a/zh-cn/docs/developers/committer-guide/apache-dubbo-page_dev.html
+++ b/zh-cn/docs/developers/committer-guide/apache-dubbo-page_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Apache有一个官方的网站,用来维护所有的孵化项目的信息。每一个孵化项目在这个网站下都有一个信息页。
 Dubbo的信息页地址是<a href="https://incubator.apache.org/projects/dubbo.html">https://incubator.apache.org/projects/dubbo.html</a>。</p>
 <p>当项目发生比较大的变化,比如新的committer的加入,新的PMC的当选,或是新版本的Release等,都需要将这些更新信息维护到这个页面。
diff --git a/zh-cn/docs/developers/committer-guide/label-an-issue-guide_dev.html b/zh-cn/docs/developers/committer-guide/label-an-issue-guide_dev.html
index 22f740d..306e943 100644
--- a/zh-cn/docs/developers/committer-guide/label-an-issue-guide_dev.html
+++ b/zh-cn/docs/developers/committer-guide/label-an-issue-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果您正在处理一个问题,请记得<strong>给这个问题标记一个或者多个您认为有意义的标签</strong>。有了标签,其他开发人员就会很轻松地识别出问题,以便对其进行分类并跟踪进度。</p>
 <p>对于需要编码和发版修复的issues和pull requests,需要您<strong>将其标记为<a href="https://github.com/apache/incubator*dubbo/milestones">milestone</a></strong>。</p>
 <p>一些常用的标签:</p>
diff --git a/zh-cn/docs/developers/committer-guide/new-committer-guide_dev.html b/zh-cn/docs/developers/committer-guide/new-committer-guide_dev.html
index 7cbacc5..7da108b 100644
--- a/zh-cn/docs/developers/committer-guide/new-committer-guide_dev.html
+++ b/zh-cn/docs/developers/committer-guide/new-committer-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>一、Apache 提交者的产生</h2>
 <h3>项目孵化初始化提交者</h3>
 <p>项目孵化阶段,在孵化项目提案中,会有初始化提交者列表这一选项。确认你是初始化提交者的一员。项目在 apache 孵化器社区投票通过后,提交者可以开始准备注册账户了。可以参看<a href="https://wiki.apache.org/incubator/">孵化器 wiki</a></p>
diff --git a/zh-cn/docs/developers/committer-guide/release-guide_dev.html b/zh-cn/docs/developers/committer-guide/release-guide_dev.html
index d3dcd58..064099a 100644
--- a/zh-cn/docs/developers/committer-guide/release-guide_dev.html
+++ b/zh-cn/docs/developers/committer-guide/release-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>理解Apache发布的内容和流程</h2>
 <p>总的来说,Source Release是Apache关注的重点,也是发布的必须内容;而Binary Release是可选项,Dubbo可以选择是否发布二进制包到Apache仓库或者发布到Maven中央仓库。</p>
 <p>请参考以下链接,找到更多关于ASF的发布指南:</p>
diff --git a/zh-cn/docs/developers/committer-guide/website-guide_dev.html b/zh-cn/docs/developers/committer-guide/website-guide_dev.html
index 2fa8b0d..542d3a6 100644
--- a/zh-cn/docs/developers/committer-guide/website-guide_dev.html
+++ b/zh-cn/docs/developers/committer-guide/website-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <ol>
 <li>Apache Dubbo 的网站仓库是 <a href="https://github.com/apache/dubbo-website">https://github.com/apache/dubbo-website</a></li>
 <li>网站构建完毕后,它会被自动发布到 <a href="http://dubbo.apache.org">dubbo.apache.org</a>,您也可以通过 <a href="https://selfserve.apache.org">https://selfserve.apache.org</a> 手动触发(需要使用 Apache 账号登陆)</li>
diff --git a/zh-cn/docs/developers/contributor-guide/become-a-committer_dev.html b/zh-cn/docs/developers/contributor-guide/become-a-committer_dev.html
index 791dde5..85f8921 100644
--- a/zh-cn/docs/developers/contributor-guide/become-a-committer_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/become-a-committer_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>每个人都可以成为Apache项目的贡献者。作为一个贡献者只是意味着你对项目感兴趣并以某种方式做出贡献,从提出合理的问题(这些问题记录了项目并向开发人员提供反馈)到提供新的特性作为补丁。</p>
 <p>如果你成为对一个项目有价值的贡献者,你有可能被邀请成为一个committer。committer是ASF(Apache软件基金会)中用来表示提交特定项目的人的术语。它给你带来对项目仓库和资源写的权限。</p>
 <p>在Dubbo社区,如果一个committer获得大量的优秀成绩,就可以被邀请加入项目管理委员会(PMC)。</p>
diff --git a/zh-cn/docs/developers/contributor-guide/cla-signing-guide_dev.html b/zh-cn/docs/developers/contributor-guide/cla-signing-guide_dev.html
index f79e597..6cfdb2a 100644
--- a/zh-cn/docs/developers/contributor-guide/cla-signing-guide_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/cla-signing-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>以下情况,需要您签署Apache ICLA:</p>
 <ul>
 <li>在Dubbo被捐赠给Apache之前,您已经为Dubbo作出了很多贡献,并且您以前没有签署过Alibaba-CLA。</li>
diff --git a/zh-cn/docs/developers/contributor-guide/dubbo-extension-guide_dev.html b/zh-cn/docs/developers/contributor-guide/dubbo-extension-guide_dev.html
index 69d6cff..f711c4a 100644
--- a/zh-cn/docs/developers/contributor-guide/dubbo-extension-guide_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/dubbo-extension-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo使用微内核+插件的设计模式。内核只负责组装插件,Dubbo的功能都是由扩展点(插件)实现,这就意味着Dubbo的所有功能都可以被用户定制的扩展所替代。</p>
 <h3>Dubbo生态系统</h3>
 <p>我们建议您将扩展加入到Dubbo生态系统。使用这种模式,可以使Dubbo的核心仓库更干净,并且可以减少维护工作。更少的代码也可以提高核心仓库的构建速度。</p>
diff --git a/zh-cn/docs/developers/contributor-guide/mailing-list-subscription-guide_dev.html b/zh-cn/docs/developers/contributor-guide/mailing-list-subscription-guide_dev.html
index fba58cb..db76cc3 100644
--- a/zh-cn/docs/developers/contributor-guide/mailing-list-subscription-guide_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/mailing-list-subscription-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Apache incubator的Dubbo开发者邮件列表(dev@dubbo.apache.org)已经建立,请随时订阅并参考[^1]获取更多细节。</p>
 <p>你也可以直接查看<a href="https://lists.apache.org/list.html?dev@dubbo.apache.org">历史邮件</a></p>
 <p>下面是一个关于Dubbo邮件列表订阅的简短指南:</p>
diff --git a/zh-cn/docs/developers/contributor-guide/new-contributor-guide_dev.html b/zh-cn/docs/developers/contributor-guide/new-contributor-guide_dev.html
index 25e7160..74d3c4f 100644
--- a/zh-cn/docs/developers/contributor-guide/new-contributor-guide_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/new-contributor-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>这篇向导旨在给正在准备向Dubbo提交贡献的新手提供指导。</p>
 <h3>邮件列表描述</h3>
 <p>邮件列表是Dubbo官方推荐的讨论方式,所有与Dubbo相关的内容都可以在这里讨论,请点击 <a href="https://github.com/apache/dubbo/issues/1393">issue</a> 了解更多关于邮件列表订阅的内容</p>
diff --git a/zh-cn/docs/developers/contributor-guide/reporting-security-issues_dev.html b/zh-cn/docs/developers/contributor-guide/reporting-security-issues_dev.html
index fb0e706..eea6200 100644
--- a/zh-cn/docs/developers/contributor-guide/reporting-security-issues_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/reporting-security-issues_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Apache Software Foundation在消除其软件项目中的安全性问题方面采取严格的立场。Apache Dubbo对与其功能和特性有关的问题非常敏感并很快提出。</p>
 <h2>报告漏洞</h2>
 <p>如果您对Dubbo的安全性有担心,或者发现漏洞或潜在威胁,请发送电子邮件至security@dubbo.apache.org与Apache Dubbo安全团队联系。在邮件中,指定问题或潜在威胁的描述。还敦促您推荐重现和复制问题的方法。Dubbo社区会在评估和分析调查结果之后与您联系。</p>
diff --git a/zh-cn/docs/developers/contributor-guide/software-donation-guide_dev.html b/zh-cn/docs/developers/contributor-guide/software-donation-guide_dev.html
index 09c0934..89551f1 100644
--- a/zh-cn/docs/developers/contributor-guide/software-donation-guide_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/software-donation-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在您阅读这篇指南之前,请确保您已经向PMC确认了实际需要的SGA。</p>
 <p>如果您向Apache Dubbo 捐赠了大量的代码或文档,则需要在合并代码或者文档之前签署<a href="https://www.apache.org/licenses/#grants">软件授权书</a>。</p>
 <h3>操作步骤</h3>
diff --git a/zh-cn/docs/developers/contributor-guide/test-coverage-guide_dev.html b/zh-cn/docs/developers/contributor-guide/test-coverage-guide_dev.html
index 333724c..a33584a 100644
--- a/zh-cn/docs/developers/contributor-guide/test-coverage-guide_dev.html
+++ b/zh-cn/docs/developers/contributor-guide/test-coverage-guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h3>1.写单元测试的收益</h3>
 <ul>
 <li>单元测试能帮助每个人深入代码细节,了解代码的功能。</li>
diff --git a/zh-cn/docs/developers/developers_dev.html b/zh-cn/docs/developers/developers_dev.html
index 8700f16..81ee6cb 100644
--- a/zh-cn/docs/developers/developers_dev.html
+++ b/zh-cn/docs/developers/developers_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>本页面展示了Dubbo的开发团队。请通过提交PR的方式把自己的信息添加到列表上。注:排名不分先后</p>
 <h3>提交者</h3>
 <table>
diff --git a/zh-cn/docs/developers/guide_dev.html b/zh-cn/docs/developers/guide_dev.html
index cd50de5..7842e01 100644
--- a/zh-cn/docs/developers/guide_dev.html
+++ b/zh-cn/docs/developers/guide_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo是在非限制性的Apache 2.0许可下发布的,遵循标准的Github开发流程,使用Github追踪处理问题,并将pull request合并到master中。如果您想为Dubbo 做贡献(即便是一些微小的),请不要犹豫,遵循下面的指导方针。</p>
 <h3>签署贡献者许可协议</h3>
 <p>在我们接受一个补丁或pull request之前,我们需要您签署贡献者许可协议。签署贡献者协议并不授予任何人对代码仓库的提交权限,但是它意味着我们可以接受您的贡献,并且如果我们这样做,您将获得一个作者标注。主动贡献者可能会被邀请加入核心团队,并有权限合并pull request。</p>
diff --git a/zh-cn/docs/developers/user-guide/faq_dev.html b/zh-cn/docs/developers/user-guide/faq_dev.html
index 6e2ce28..4f0607a 100644
--- a/zh-cn/docs/developers/user-guide/faq_dev.html
+++ b/zh-cn/docs/developers/user-guide/faq_dev.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h3>dubbo-admin在哪里?</h3>
 <p>从Dubbo 2.6.1版本开始,dubbo-admin已经从核心库迁移到https://github.com/apache/dubbo-admin</p>
 <h3>我应该选择哪个版本?</h3>
diff --git a/zh-cn/docs/source_code_guide/adaptive-extension.html b/zh-cn/docs/source_code_guide/adaptive-extension.html
index c1d0d95..eade0d5 100644
--- a/zh-cn/docs/source_code_guide/adaptive-extension.html
+++ b/zh-cn/docs/source_code_guide/adaptive-extension.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在 Dubbo 中,很多拓展都是通过 SPI 机制进行加载的,比如 Protocol、Cluster、LoadBalance 等。有时,有些拓展并不想在框架启动阶段被加载,而是希望在拓展方法被调用时,根据运行时参数进行加载。这听起来有些矛盾。拓展未被加载,那么拓展方法就无法被调用(静态方法除外)。拓展方法未被调用,拓展就无法被加载。对于这个矛盾的问题,Dubbo 通过自适应拓展机制很好的解决了。自适应拓展机制的实现逻辑比较复杂,首先 Dubbo 会为拓展接口生成具有代理功能的代码。然后通过 javassist 或 jdk 编译这段代码,得到 Class 类。最后再通过反射创建代理类,整个过程比较复杂。为了让大家对自适应拓展有一个感性的认识,下面我们通过一个示例进行演示。这是一个与汽车相关的例子,我们有一个车轮制造厂接口 WheelMaker:</p>
 <pre><code class="language-java"><span class="hljs-keyword">public</span> <span class="hljs-class"><span class="hljs-keyword">interface</span> <span class="hljs-title">WheelMaker</span> </span>{
     <span class="hljs-function">Wheel <span class="hljs-title">makeWheel</span><span class="hljs-params">(URL url)</span></span>;
diff --git a/zh-cn/docs/source_code_guide/cluster.html b/zh-cn/docs/source_code_guide/cluster.html
index 053a37b..49ee036 100644
--- a/zh-cn/docs/source_code_guide/cluster.html
+++ b/zh-cn/docs/source_code_guide/cluster.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>为了避免单点故障,现在的应用通常至少会部署在两台服务器上。对于一些负载比较高的服务,会部署更多的服务器。这样,在同一环境下的服务提供者数量会大于1。对于服务消费者来说,同一环境下出现了多个服务提供者。这时会出现一个问题,服务消费者需要决定选择哪个服务提供者进行调用。另外服务调用失败时的处理措施也是需要考虑的,是重试呢,还是抛出异常,亦或是只打印异常等。为了处理这些问题,Dubbo 定义了集群接口 Cluster 以及 Cluster Invoker。集群 Cluster 用途是将多个服务提供者合并为一个 Cluster Invoker,并将这个 Invoker 暴露给服务消费者。这样一来,服务消费者只需通过这个 Invoker 进行远程调用即可,至于具体调用哪个服务提供者,以及调用失败后如何处理等问题,现在都交给集群模块去处理。集群模块是服务提供者和服�
 ��消费者的中间层,为服务消费者屏蔽了服务提供者的情况,这样服务消费者就可以专心处理远程调用相关事宜。比如发请求,接受服务提供者返回的数据等。这就是集群的作用。</p>
 <p>Dubbo 提供了多种集群实现,包含但不限于 Failover Cluster、Failfast Cluster 和 Failsafe Cluster 等。每种集群实现类的用途不同,接下来会一一进行分析。</p>
 <h2>2. 集群容错</h2>
diff --git a/zh-cn/docs/source_code_guide/directory.html b/zh-cn/docs/source_code_guide/directory.html
index 4305800..18cbaed 100644
--- a/zh-cn/docs/source_code_guide/directory.html
+++ b/zh-cn/docs/source_code_guide/directory.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>本篇文章,将开始分析 Dubbo 集群容错方面的源码。集群容错源码包含四个部分,分别是服务目录 Directory、服务路由 Router、集群 Cluster 和负载均衡 LoadBalance。这几个部分的源码逻辑相对比较独立,我们将会分四篇文章进行分析。本篇文章作为集群容错的开篇文章,将和大家一起分析服务目录相关的源码。在进行深入分析之前,我们先来了解一下服务目录是什么。服务目录中存储了一些和服务提供者有关的信息,通过服务目录,服务消费者可获取到服务提供者的信息,比如 ip、端口、服务协议等。通过这些信息,服务消费者就可通过 Netty 等客户端进行远程调用。在一个服务集群中,服务提供者数量并不是一成不变的,如果集群中新增了一台机器,相应地在服务目录中就要新增一条服务提供者记录。或者,如果服务提供者的配置修改了,服务目录
 中的记录也要做相应的更新。如果这样说,服务目录和注册中心的功能不就雷同了吗?确实如此,这里这么说是为了方便大家理解。实际上服务目录在获取注册中心的服务配置信息后,会为每条配置信息生成一个 Invoker 对象,并把这个 Invoker 对象存 [...]
 <p>关于服务目录这里就先介绍这些,大家先有个大致印象。接下来我们通过继承体系图来了解一下服务目录的家族成员都有哪些。</p>
 <h2>2. 继承体系</h2>
diff --git a/zh-cn/docs/source_code_guide/dubbo-spi.html b/zh-cn/docs/source_code_guide/dubbo-spi.html
index 87cf3c4..2c7db17 100644
--- a/zh-cn/docs/source_code_guide/dubbo-spi.html
+++ b/zh-cn/docs/source_code_guide/dubbo-spi.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>SPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的程序提供拓展功能。SPI 机制在第三方框架中也有所应用,比如 Dubbo 就是通过 SPI 机制加载所有的组件。不过,Dubbo 并未使用 Java 原生的 SPI 机制,而是对其进行了增强,使其能够更好的满足需求。在 Dubbo 中,SPI 是一个非常重要的模块。基于 SPI,我们可以很容易的对 Dubbo 进行拓展。如果大家想要学习 Dubbo 的源码,SPI 机制务必弄懂。接下来,我们先来了解一下 Java SPI 与 Dubbo SPI 的用法,然后再来分析 Dubbo SPI 的源码。</p>
 <p>需要特别说明的是,本篇文章以及本系列其他文章所分析的源码版本均为 <strong>dubbo-2.6.4</strong>。因此大家在阅读文章的过程中,需注意将代码版本切换到 dubbo-2.6.4 tag 上。</p>
 <h2>2.SPI 示例</h2>
diff --git a/zh-cn/docs/source_code_guide/export-service.html b/zh-cn/docs/source_code_guide/export-service.html
index 2c4c384..b7787d7 100644
--- a/zh-cn/docs/source_code_guide/export-service.html
+++ b/zh-cn/docs/source_code_guide/export-service.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>本篇文章,我们来研究一下 Dubbo 导出服务的过程。Dubbo 服务导出过程始于 Spring 容器发布刷新事件,Dubbo 在接收到事件后,会立即执行服务导出逻辑。整个逻辑大致可分为三个部分,第一部分是前置工作,主要用于检查参数,组装 URL。第二部分是导出服务,包含导出服务到本地 (JVM),和导出服务到远程两个过程。第三部分是向注册中心注册服务,用于服务发现。本篇文章将会对这三个部分代码进行详细的分析。</p>
 <h2>2.源码分析</h2>
 <p>服务导出的入口方法是 ServiceBean 的 onApplicationEvent。onApplicationEvent 是一个事件响应方法,该方法会在收到 Spring 上下文刷新事件后执行服务导出操作。方法代码如下:</p>
diff --git a/zh-cn/docs/source_code_guide/loadbalance.html b/zh-cn/docs/source_code_guide/loadbalance.html
index 6c78edd..bebf0a3 100644
--- a/zh-cn/docs/source_code_guide/loadbalance.html
+++ b/zh-cn/docs/source_code_guide/loadbalance.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>LoadBalance 中文意思为负载均衡,它的职责是将网络请求,或者其他形式的负载“均摊”到不同的机器上。避免集群中部分服务器压力过大,而另一些服务器比较空闲的情况。通过负载均衡,可以让每台服务器获取到适合自己处理能力的负载。在为高负载服务器分流的同时,还可以避免资源浪费,一举两得。负载均衡可分为软件负载均衡和硬件负载均衡。在我们日常开发中,一般很难接触到硬件负载均衡。但软件负载均衡还是可以接触到的,比如 Nginx。在 Dubbo 中,也有负载均衡的概念和相应的实现。Dubbo 需要对服务消费者的调用请求进行分配,避免少数服务提供者负载过大。服务提供者负载过大,会导致部分请求超时。因此将负载均衡到每个服务提供者上,是非常必要的。Dubbo 提供了4种负载均衡实现,分别是基于权重随机算法的 RandomLoadBalance�
 �基于最少活跃调用数算法的 LeastActiveLoadBalance、基于 hash 一致性的 ConsistentHashLoadBalance,以及基于加权轮询算法的 RoundRobinLoadBalance。这几个负载均衡算法代码 [...]
 <p>本系列文章在编写之初是基于 Dubbo 2.6.4 的,近期,Dubbo 2.6.5 发布了,其中就有针对对负载均衡部分的优化。因此我们在分析完 2.6.4 版本后的源码后,会另外分析 2.6.5 更新的部分。其他的就不多说了,进入正题吧。</p>
 <h2>2.源码分析</h2>
diff --git a/zh-cn/docs/source_code_guide/refer-service.html b/zh-cn/docs/source_code_guide/refer-service.html
index 1dd0765..9bc155e 100644
--- a/zh-cn/docs/source_code_guide/refer-service.html
+++ b/zh-cn/docs/source_code_guide/refer-service.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>上一篇文章详细分析了服务导出的过程,本篇文章我们趁热打铁,继续分析服务引用过程。在 Dubbo 中,我们可以通过两种方式引用远程服务。第一种是使用服务直连的方式引用服务,第二种方式是基于注册中心进行引用。服务直连的方式仅适合在调试或测试服务的场景下使用,不适合在线上环境使用。因此,本文我将重点分析通过注册中心引用服务的过程。从注册中心中获取服务配置只是服务引用过程中的一环,除此之外,服务消费者还需要经历 Invoker 创建、代理类创建等步骤。这些步骤,将在后续章节中一一进行分析。</p>
 <h2>2.服务引用原理</h2>
 <p>Dubbo 服务引用的时机有两个,第一个是在 Spring 容器调用 ReferenceBean 的 afterPropertiesSet 方法时引用服务,第二个是在 ReferenceBean 对应的服务被注入到其他类中时引用。这两个引用服务的时机区别在于,第一个是饿汉式的,第二个是懒汉式的。默认情况下,Dubbo 使用懒汉式引用服务。如果需要使用饿汉式,可通过配置 &lt;dubbo:reference&gt; 的 init 属性开启。下面我们按照 Dubbo 默认配置进行分析,整个分析过程从 ReferenceBean 的 getObject 方法开始。当我们的服务被注入到其他类中时,Spring 会第一时间调用 getObject 方法,并由该方法执行服务引用逻辑。按照惯例,在进行具体工作之前,需先进行配置检查与收集工作。接着根据收集到的信息决定服务用的方式,有三种,第一种是引用本地 (JVM) 服务,第二是通过直连方式引用远程服务,第三是通过注册中心引�
 ��远程服务。不管是哪种引用方式,最后都会得到一个 Invoker 实例。如果有多个注册中心,多个服务提供 [...]
diff --git a/zh-cn/docs/source_code_guide/router.html b/zh-cn/docs/source_code_guide/router.html
index aed420b..f388af6 100644
--- a/zh-cn/docs/source_code_guide/router.html
+++ b/zh-cn/docs/source_code_guide/router.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>上一篇文章分析了集群容错的第一部分 — 服务目录 Directory。服务目录在刷新 Invoker 列表的过程中,会通过 Router 进行服务路由,筛选出符合路由规则的服务提供者。在详细分析服务路由的源码之前,先来介绍一下服务路由是什么。服务路由包含一条路由规则,路由规则决定了服务消费者的调用目标,即规定了服务消费者可调用哪些服务提供者。Dubbo 目前提供了三种服务路由实现,分别为条件路由 ConditionRouter、脚本路由 ScriptRouter 和标签路由 TagRouter。其中条件路由是我们最常使用的,标签路由是一个新的实现,暂时还未发布,该实现预计会在 2.7.x 版本中发布。本篇文章将分析条件路由相关源码,脚本路由和标签路由这里就不分析了。</p>
 <h2>2. 源码分析</h2>
 <p>条件路由规则由两个条件组成,分别用于对服务消费者和提供者进行匹配。比如有这样一条规则:</p>
diff --git a/zh-cn/docs/source_code_guide/service-invoking-process.html b/zh-cn/docs/source_code_guide/service-invoking-process.html
index 51c93ad..778aead 100644
--- a/zh-cn/docs/source_code_guide/service-invoking-process.html
+++ b/zh-cn/docs/source_code_guide/service-invoking-process.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在前面的文章中,我们分析了 Dubbo SPI、服务导出与引入、以及集群容错方面的代码。经过前文的铺垫,本篇文章我们终于可以分析服务调用过程了。Dubbo 服务调用过程比较复杂,包含众多步骤,比如发送请求、编解码、服务降级、过滤器链处理、序列化、线程派发以及响应请求等步骤。限于篇幅原因,本篇文章无法对所有的步骤一一进行分析。本篇文章将会重点分析请求的发送与接收、编解码、线程派发以及响应的发送与接收等过程,至于服务降级、过滤器链和序列化大家自行进行分析,也可以将其当成一个黑盒,暂时忽略也没关系。介绍完本篇文章要分析的内容,接下来我们进入正题吧。</p>
 <h2>2. 源码分析</h2>
 <p>在进行源码分析之前,我们先来通过一张图了解 Dubbo 服务调用过程。</p>
diff --git a/zh-cn/docs/user/README.html b/zh-cn/docs/user/README.html
index 01ac815..9a8a7b6 100644
--- a/zh-cn/docs/user/README.html
+++ b/zh-cn/docs/user/README.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果你正依赖<code>dubbo</code>作为你业务工程的RPC通信框架,这里可以作为你的参考手册</p>
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/docs/user/SUMMARY.html b/zh-cn/docs/user/SUMMARY.html
index 10f86d2..8798d13 100644
--- a/zh-cn/docs/user/SUMMARY.html
+++ b/zh-cn/docs/user/SUMMARY.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <ul>
 <li><a href="./preface/index.md">1 入门</a>
 <ul>
diff --git a/zh-cn/docs/user/benchmark-tool.html b/zh-cn/docs/user/benchmark-tool.html
index 1fe4652..c48fbb0 100644
--- a/zh-cn/docs/user/benchmark-tool.html
+++ b/zh-cn/docs/user/benchmark-tool.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <ul>
 <li>下载源码: git clone <a href="https://github.com/apache/dubbo.git">https://github.com/apache/dubbo.git</a></li>
 <li>编译benchmark: cd dubbo/dubbo-test/dubbo-test-benchmark; mvn clean install</li>
diff --git a/zh-cn/docs/user/best-practice.html b/zh-cn/docs/user/best-practice.html
index 48c2e15..2b6120e 100644
--- a/zh-cn/docs/user/best-practice.html
+++ b/zh-cn/docs/user/best-practice.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>分包</h2>
 <p>建议将服务接口、服务模型、服务异常等均放在 API 包中,因为服务模型和异常也是 API 的一部分,这样做也符合分包原则:重用发布等价原则(REP),共同重用原则(CRP)。</p>
 <p>如果需要,也可以考虑在 API 包中放置一份 Spring 的引用配置,这样使用方只需在 Spring 加载过程中引用此配置即可。配置建议放在模块的包目录下,以免冲突,如:<code>com/alibaba/china/xxx/dubbo-reference.xml</code>。</p>
diff --git a/zh-cn/docs/user/capacity-plan.html b/zh-cn/docs/user/capacity-plan.html
index ba9af9f..95dc6b3 100644
--- a/zh-cn/docs/user/capacity-plan.html
+++ b/zh-cn/docs/user/capacity-plan.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>以下数据供参考:</p>
 <h2>使用 Dubbo 的会员服务项目</h2>
 <ul>
diff --git a/zh-cn/docs/user/configuration/annotation.html b/zh-cn/docs/user/configuration/annotation.html
index bb54cd7..0c8a9ca 100644
--- a/zh-cn/docs/user/configuration/annotation.html
+++ b/zh-cn/docs/user/configuration/annotation.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>需要 <code>2.6.3</code> 及以上版本支持
 点此查看<a href="https://github.com/apache/dubbo-samples/tree/master/dubbo-samples-annotation">完整示例</a></p>
 <h2>服务提供方</h2>
diff --git a/zh-cn/docs/user/configuration/api.html b/zh-cn/docs/user/configuration/api.html
index 1ce4cd2..9d796a0 100644
--- a/zh-cn/docs/user/configuration/api.html
+++ b/zh-cn/docs/user/configuration/api.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>API 属性与配置项一对一,各属性含义,请参见:<a href="../references/xml/introduction.md">配置参考手册</a>,比如:<code>ApplicationConfig.setName(&quot;xxx&quot;)</code> 对应  <code>&lt;dubbo:application name=&quot;xxx&quot; /&gt;</code> <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
 <h2>服务提供者</h2>
 <pre><code class="language-java"><span class="hljs-keyword">import</span> org.apache.dubbo.rpc.config.ApplicationConfig;
diff --git a/zh-cn/docs/user/configuration/config-center.html b/zh-cn/docs/user/configuration/config-center.html
index 5400ca2..2132fc5 100644
--- a/zh-cn/docs/user/configuration/config-center.html
+++ b/zh-cn/docs/user/configuration/config-center.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>配置中心(v2.7.0)在Dubbo中承担两个职责:</p>
 <ol>
 <li>外部化配置。启动配置的集中式存储 (简单理解为dubbo.properties的外部化存储)。</li>
diff --git a/zh-cn/docs/user/configuration/configuration-load-process.html b/zh-cn/docs/user/configuration/configuration-load-process.html
index e400115..0d70471 100644
--- a/zh-cn/docs/user/configuration/configuration-load-process.html
+++ b/zh-cn/docs/user/configuration/configuration-load-process.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>此篇文档主要讲在<strong>应用启动阶段,Dubbo框架如何将所需要的配置采集起来</strong>(包括应用配置、注册中心配置、服务配置等),以完成服务的暴露和引用流程。</p>
 <p>根据驱动方式的不同(比如Spring或裸API编程)配置形式上肯定会有所差异,具体请参考<a href="./xml.md">XML配置</a>、<a href="./annotation.md">Annotation配置</a>、<a href="./api.md">API配置</a>三篇文档。除了外围驱动方式上的差异,Dubbo的配置读取总体上遵循了以下几个原则:</p>
 <ol>
diff --git a/zh-cn/docs/user/configuration/environment-variables.html b/zh-cn/docs/user/configuration/environment-variables.html
index 13dd915..2dd479f 100644
--- a/zh-cn/docs/user/configuration/environment-variables.html
+++ b/zh-cn/docs/user/configuration/environment-variables.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>从2.7.3版本开始,Dubbo会自动从约定key中读取配置,并将配置以Key-Value的形式写入到URL中。</p>
 <p>支持的key有以下两个:</p>
 <ol>
diff --git a/zh-cn/docs/user/configuration/index.html b/zh-cn/docs/user/configuration/index.html
index 72c1a94..51db1bc 100644
--- a/zh-cn/docs/user/configuration/index.html
+++ b/zh-cn/docs/user/configuration/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/user/configuration/properties-deprecated.html b/zh-cn/docs/user/configuration/properties-deprecated.html
index 9c8356d..f032d3b 100644
--- a/zh-cn/docs/user/configuration/properties-deprecated.html
+++ b/zh-cn/docs/user/configuration/properties-deprecated.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果公共配置很简单,没有多注册中心,多协议等情况,或者想多个 Spring 容器想共享配置,可以使用 dubbo.properties 作为缺省配置。</p>
 <p>Dubbo 将自动加载 classpath 根目录下的 dubbo.properties,可以通过JVM启动参数 <code>-Ddubbo.properties.file=xxx.properties</code> 改变缺省配置位置。<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
 <h2>映射规则</h2>
diff --git a/zh-cn/docs/user/configuration/properties.html b/zh-cn/docs/user/configuration/properties.html
index 24486a0..96b4249 100644
--- a/zh-cn/docs/user/configuration/properties.html
+++ b/zh-cn/docs/user/configuration/properties.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果你的应用足够简单,例如,不需要多注册中心或多协议,并且需要在spring容器中共享配置,那么,我们可以直接使用 <code>dubbo.properties</code>作为默认配置。</p>
 <p>Dubbo可以自动加载classpath根目录下的dubbo.properties,但是你同样可以使用JVM参数来指定路径:<code>-Ddubbo.properties.file=xxx.properties</code>。</p>
 <h1>映射规则</h1>
diff --git a/zh-cn/docs/user/configuration/xml.html b/zh-cn/docs/user/configuration/xml.html
index 458f4b3..17e1ac5 100644
--- a/zh-cn/docs/user/configuration/xml.html
+++ b/zh-cn/docs/user/configuration/xml.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>有关 XML 的详细配置项,请参见:<a href="../references/xml/introduction.md">配置参考手册</a>。如果不想使用 Spring 配置,而希望通过 API 的方式进行调用,请参见:<a href="./api.md">API配置</a>。想知道如何使用配置,请参见:<a href="../quick-start.md">快速启动</a>。</p>
 <p>请在此查看文档描述的<a href="https://github.com/apache/dubbo-samples/tree/master/dubbo-samples-basic">完整示例</a></p>
 <h2>provider.xml 示例</h2>
diff --git a/zh-cn/docs/user/coveragence.html b/zh-cn/docs/user/coveragence.html
index 0fa2c38..e978e40 100644
--- a/zh-cn/docs/user/coveragence.html
+++ b/zh-cn/docs/user/coveragence.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <ul>
 <li>v2.0   Codecov报表 , 从2017-12-29后开始统计
 测试覆盖率为 : <a href="https://codecov.io/gh/apache/dubbo"><img src="https://codecov.io/gh/apache/dubbo/branch/master/graph/badge.svg" alt="codecov"></a> , 可以从 <a href="https://codecov.io/gh/apache/dubbo">https://codecov.io/gh/apache/dubbo</a> 页面得到覆盖率报表</li>
diff --git a/zh-cn/docs/user/demos/GooglePb-generic-reference.html b/zh-cn/docs/user/demos/GooglePb-generic-reference.html
index 216bcb8..b6a0919 100644
--- a/zh-cn/docs/user/demos/GooglePb-generic-reference.html
+++ b/zh-cn/docs/user/demos/GooglePb-generic-reference.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>泛化接口调用方式主要用于客户端没有 API 接口及模型类元的情况,参考 <a href="http://dubbo.apache.org/zh-cn/docs/user/demos/group-merger.html">泛化调用</a>。
 一般泛化调用只能用于生成的服务参数为POJO的情况,而GoogleProtobuf的对象是基于Builder生成的非正常POJO,可以通过protobuf-json泛化调用。<br>
 GoogleProtobuf序列化相关的Demo可以参考<a href="https://github.com/vio-lin/dubbo-samples/tree/protobuf-demo">protobuf-demo</a></p>
diff --git a/zh-cn/docs/user/demos/accesslog.html b/zh-cn/docs/user/demos/accesslog.html
index 0ee9a53..0598a7c 100644
--- a/zh-cn/docs/user/demos/accesslog.html
+++ b/zh-cn/docs/user/demos/accesslog.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果你想记录每一次请求信息,可开启访问日志,类似于apache的访问日志。<strong>注意</strong>:此日志量比较大,请注意磁盘容量。</p>
 <p>将访问日志输出到当前应用的log4j日志:</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:protocol</span> <span class="hljs-attr">accesslog</span>=<span class="hljs-string">"true"</span> /&gt;</span>
diff --git a/zh-cn/docs/user/demos/async-call-deprecated.html b/zh-cn/docs/user/demos/async-call-deprecated.html
index 1ca1d02..37b4871 100644
--- a/zh-cn/docs/user/demos/async-call-deprecated.html
+++ b/zh-cn/docs/user/demos/async-call-deprecated.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>基于 NIO 的非阻塞实现并行调用,客户端不需要启动多线程即可完成并行调用多个远程服务,相对多线程开销较小。 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
 <p><img src="../sources/images/future.jpg" alt="/user-guide/images/future.jpg"></p>
 <p>在 consumer.xml 中配置:</p>
diff --git a/zh-cn/docs/user/demos/async-call.html b/zh-cn/docs/user/demos/async-call.html
index 5feaa14..ace68ca 100644
--- a/zh-cn/docs/user/demos/async-call.html
+++ b/zh-cn/docs/user/demos/async-call.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>从v2.7.0开始,Dubbo的所有异步编程接口开始以<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html">CompletableFuture</a>为基础</p>
 <p>基于 NIO 的非阻塞实现并行调用,客户端不需要启动多线程即可完成并行调用多个远程服务,相对多线程开销较小。</p>
 <p><img src="../sources/images/future.jpg" alt="/user-guide/images/future.jpg"></p>
diff --git a/zh-cn/docs/user/demos/async-execute-on-provider.html b/zh-cn/docs/user/demos/async-execute-on-provider.html
index 7bbf8fe..f4bfacb 100644
--- a/zh-cn/docs/user/demos/async-execute-on-provider.html
+++ b/zh-cn/docs/user/demos/async-execute-on-provider.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Provider端异步执行将阻塞的业务从Dubbo内部线程池切换到业务自定义线程,避免Dubbo线程池的过度占用,有助于避免不同服务间的互相影响。异步执行无益于节省资源或提升RPC响应性能,因为如果业务执行需要阻塞,则始终还是要有线程来负责执行。</p>
 <blockquote>
 <p>注意:Provider端异步执行和Consumer端异步调用是相互独立的,你可以任意正交组合两端配置</p>
diff --git a/zh-cn/docs/user/demos/attachment.html b/zh-cn/docs/user/demos/attachment.html
index 1129615..912d6f7 100644
--- a/zh-cn/docs/user/demos/attachment.html
+++ b/zh-cn/docs/user/demos/attachment.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>可以通过 <code>RpcContext</code> 上的 <code>setAttachment</code> 和 <code>getAttachment</code> 在服务消费方和提供方之间进行参数的隐式传递。 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
 <p><img src="../sources/images/context.png" alt="/user-guide/images/context.png"></p>
 <h4>在服务消费方端设置隐式参数</h4>
diff --git a/zh-cn/docs/user/demos/auth.html b/zh-cn/docs/user/demos/auth.html
index fd3acf6..410e4ea 100644
--- a/zh-cn/docs/user/demos/auth.html
+++ b/zh-cn/docs/user/demos/auth.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>类似支付之类的对安全性敏感的业务可能会有限制匿名调用的需求。在加固安全性方面,2.7.5 引入了基于AK/SK机制的认证鉴权机制,并且引入了鉴权服务中心,主要原理是消费端在请求需要鉴权的服务时,会通过SK、请求元数据、时间戳、参数等信息来生成对应的请求签名,通过Dubbo的Attahcment机制携带到对端进行验签,验签通过才进行业务逻辑处理。如下图所示:</p>
 <p><img src="https://raw.githubusercontent.com/Ooo0oO0o0oO/res/master/auth.png" alt=""></p>
 <p>具体的接入方式也并不复杂:</p>
diff --git a/zh-cn/docs/user/demos/callback-parameter.html b/zh-cn/docs/user/demos/callback-parameter.html
index 83224da..4e7bedd 100644
--- a/zh-cn/docs/user/demos/callback-parameter.html
+++ b/zh-cn/docs/user/demos/callback-parameter.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>参数回调方式与调用本地 callback 或 listener 相同,只需要在 Spring 的配置文件中声明哪个参数是 callback 类型即可。Dubbo 将基于长连接生成反向代理,这样就可以从服务器端调用客户端逻辑 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>。可以参考 <a href="https://github.com/dubbo/dubbo-samples/tree/master/dubbo-samples-callback">dubbo 项目中的示例代码</a>。</p>
 <h4>服务接口示例</h4>
 <h6>CallbackService.java</h6>
diff --git a/zh-cn/docs/user/demos/concurrency-control.html b/zh-cn/docs/user/demos/concurrency-control.html
index d3ee192..e01b8d7 100644
--- a/zh-cn/docs/user/demos/concurrency-control.html
+++ b/zh-cn/docs/user/demos/concurrency-control.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>配置样例</h2>
 <h3>样例 1</h3>
 <p>限制 <code>com.foo.BarService</code> 的每个方法,服务器端并发执行(或占用线程池线程数)不能超过 10 个:</p>
diff --git a/zh-cn/docs/user/demos/config-connections.html b/zh-cn/docs/user/demos/config-connections.html
index 912d674..1d2e26a 100644
--- a/zh-cn/docs/user/demos/config-connections.html
+++ b/zh-cn/docs/user/demos/config-connections.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>服务端连接控制</h2>
 <p>限制服务器端接受的连接不能超过 10 个 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>:</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:provider</span> <span class="hljs-attr">protocol</span>=<span class="hljs-string">"dubbo"</span> <span class="hljs-attr">accepts</span>=<span class="hljs-string">"10"</span> /&gt;</span>
diff --git a/zh-cn/docs/user/demos/config-rule-deprecated.html b/zh-cn/docs/user/demos/config-rule-deprecated.html
index 9ee1fc9..2e9edd5 100644
--- a/zh-cn/docs/user/demos/config-rule-deprecated.html
+++ b/zh-cn/docs/user/demos/config-rule-deprecated.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>向注册中心写入动态配置覆盖规则 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>。该功能通常由监控中心或治理中心的页面完成。</p>
 <pre><code class="language-java">RegistryFactory registryFactory = ExtensionLoader.getExtensionLoader(RegistryFactory<span class="hljs-class">.<span class="hljs-keyword">class</span>).<span class="hljs-title">getAdaptiveExtension</span>()</span>;
 Registry registry = registryFactory.getRegistry(URL.valueOf(<span class="hljs-string">"zookeeper://10.20.153.10:2181"</span>));
diff --git a/zh-cn/docs/user/demos/config-rule.html b/zh-cn/docs/user/demos/config-rule.html
index f0c5d87..fa00022 100644
--- a/zh-cn/docs/user/demos/config-rule.html
+++ b/zh-cn/docs/user/demos/config-rule.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>查看<a href="./config-rule-deprecated.md">老版本配置规则</a>。</p>
 <p>覆盖规则是Dubbo设计的在无需重启应用的情况下,动态调整RPC调用行为的一种能力。2.7.0版本开始,支持从<strong>服务</strong>和<strong>应用</strong>两个粒度来调整动态配置。</p>
 <h2>概览</h2>
diff --git a/zh-cn/docs/user/demos/consumer-threadpool.html b/zh-cn/docs/user/demos/consumer-threadpool.html
index 7d99563..7200285 100644
--- a/zh-cn/docs/user/demos/consumer-threadpool.html
+++ b/zh-cn/docs/user/demos/consumer-threadpool.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>2.7.5 版本对整个调用链路做了全面的优化,根据压测结果显示,总体 QPS 性能提升将近 30%,同时也减少了调用过程中的内存分配开销。其中一个值得提及的设计点是 2.7.5 引入了 Servicerepository 的概念,在服务注册阶段提前生成 ServiceDescriptor 和 MethodDescriptor,以减少 RPC 调用阶段计算 Service 原信息带来的资源消耗。</p>
 <h2>消费端线程池模型优化</h2>
 <p>对 2.7.5 版本之前的 Dubbo 应用,尤其是一些消费端应用,当面临需要消费大量服务且并发数比较大的大流量场景时(典型如网关类场景),经常会出现消费端线程数分配过多的问题,具体问题讨论可参见 <a href="https://github.com/apache/dubbo/issues/2013">Need a limited Threadpool in consumer side #2013</a></p>
diff --git a/zh-cn/docs/user/demos/context.html b/zh-cn/docs/user/demos/context.html
index b8f8989..2a0f6a5 100644
--- a/zh-cn/docs/user/demos/context.html
+++ b/zh-cn/docs/user/demos/context.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>上下文中存放的是当前调用过程中所需的环境信息。所有配置信息都将转换为 URL 的参数,参见 <a href="../references/xml/introduction.md">schema 配置参考手册</a> 中的<strong>对应URL参数</strong>一列。</p>
 <p>RpcContext 是一个 ThreadLocal 的临时状态记录器,当接收到 RPC 请求,或发起 RPC 请求时,RpcContext 的状态都会变化。比如:A 调 B,B 再调 C,则 B 机器上,在 B 调 C 之前,RpcContext 记录的是 A 调 B 的信息,在 B 调 C 之后,RpcContext 记录的是 B 调 C 的信息。</p>
 <h2>服务消费方</h2>
diff --git a/zh-cn/docs/user/demos/delay-publish.html b/zh-cn/docs/user/demos/delay-publish.html
index f5ba892..5a1b67f 100644
--- a/zh-cn/docs/user/demos/delay-publish.html
+++ b/zh-cn/docs/user/demos/delay-publish.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果你的服务需要预热时间,比如初始化缓存,等待相关资源就位等,可以使用 delay 进行延迟暴露。我们在 Dubbo 2.6.5 版本中对服务延迟暴露逻辑进行了细微的调整,将需要延迟暴露(delay &gt; 0)服务的倒计时动作推迟到了 Spring 初始化完成后进行。你在使用 Dubbo 的过程中,并不会感知到此变化,因此请放心使用。</p>
 <h2>Dubbo-2.6.5 之前版本</h2>
 <h3>延迟到 Spring 初始化完成后,再暴露服务<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></h3>
diff --git a/zh-cn/docs/user/demos/distributed-transaction.html b/zh-cn/docs/user/demos/distributed-transaction.html
index 3f080fe..980c0fd 100644
--- a/zh-cn/docs/user/demos/distributed-transaction.html
+++ b/zh-cn/docs/user/demos/distributed-transaction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>分布式事务基于 JTA/XA 规范实现 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>。</p>
 <p>两阶段提交:</p>
 <p><img src="../sources/images/jta-xa.jpg" alt="/user-guide/images/jta-xa.jpg"></p>
diff --git a/zh-cn/docs/user/demos/dump.html b/zh-cn/docs/user/demos/dump.html
index 4d429e6..78025d8 100644
--- a/zh-cn/docs/user/demos/dump.html
+++ b/zh-cn/docs/user/demos/dump.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>默认策略:</p>
 <ul>
 <li>导出路径,user.home标识的用户主目录</li>
diff --git a/zh-cn/docs/user/demos/echo-service.html b/zh-cn/docs/user/demos/echo-service.html
index d749303..cac0a31 100644
--- a/zh-cn/docs/user/demos/echo-service.html
+++ b/zh-cn/docs/user/demos/echo-service.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>回声测试用于检测服务是否可用,回声测试按照正常请求流程执行,能够测试整个调用是否通畅,可用于监控。</p>
 <p>所有服务自动实现 <code>EchoService</code> 接口,只需将任意服务引用强制转型为 <code>EchoService</code>,即可使用。</p>
 <p>Spring 配置:</p>
diff --git a/zh-cn/docs/user/demos/events-notify.html b/zh-cn/docs/user/demos/events-notify.html
index 960ef48..63e343b 100644
--- a/zh-cn/docs/user/demos/events-notify.html
+++ b/zh-cn/docs/user/demos/events-notify.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在调用之前、调用之后、出现异常时,会触发 <code>oninvoke</code>、<code>onreturn</code>、<code>onthrow</code> 三个事件,可以配置当事件发生时,通知哪个类的哪个方法 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>。</p>
 <h4>服务提供者与消费者共享服务接口</h4>
 <pre><code class="language-java"><span class="hljs-class"><span class="hljs-keyword">interface</span> <span class="hljs-title">IDemoService</span> </span>{
diff --git a/zh-cn/docs/user/demos/explicit-target.html b/zh-cn/docs/user/demos/explicit-target.html
index fda63ac..810caf9 100644
--- a/zh-cn/docs/user/demos/explicit-target.html
+++ b/zh-cn/docs/user/demos/explicit-target.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在开发及测试环境下,经常需要绕过注册中心,只测试指定服务提供者,这时候可能需要点对点直连,点对点直连方式,将以服务接口为单位,忽略注册中心的提供者列表,A 接口配置点对点,不影响 B 接口从注册中心获取列表。</p>
 <p><img src="../sources/images/dubbo-directly.jpg" alt="/user-guide/images/dubbo-directly.jpg"></p>
 <h2>通过 XML 配置</h2>
diff --git a/zh-cn/docs/user/demos/fault-tolerent-strategy.html b/zh-cn/docs/user/demos/fault-tolerent-strategy.html
index 1ffece3..3cf81a8 100644
--- a/zh-cn/docs/user/demos/fault-tolerent-strategy.html
+++ b/zh-cn/docs/user/demos/fault-tolerent-strategy.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在集群调用失败时,Dubbo 提供了多种容错方案,缺省为 failover 重试。</p>
 <p><img src="../sources/images/cluster.jpg" alt="cluster"></p>
 <p>各节点关系:</p>
diff --git a/zh-cn/docs/user/demos/generic-reference.html b/zh-cn/docs/user/demos/generic-reference.html
index aaea6a8..0c2e012 100644
--- a/zh-cn/docs/user/demos/generic-reference.html
+++ b/zh-cn/docs/user/demos/generic-reference.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>泛化接口调用方式主要用于客户端没有 API 接口及模型类元的情况,参数及返回值中的所有 POJO 均用 <code>Map</code> 表示,通常用于框架集成,比如:实现一个通用的服务测试框架,可通过 <code>GenericService</code> 调用所有服务实现。</p>
 <h2>通过 Spring 使用泛化调用</h2>
 <p>在 Spring 配置申明 <code>generic=&quot;true&quot;</code>:</p>
diff --git a/zh-cn/docs/user/demos/generic-service.html b/zh-cn/docs/user/demos/generic-service.html
index 614b58c..b632863 100644
--- a/zh-cn/docs/user/demos/generic-service.html
+++ b/zh-cn/docs/user/demos/generic-service.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>泛接口实现方式主要用于服务器端没有API接口及模型类元的情况,参数及返回值中的所有POJO均用Map表示,通常用于框架集成,比如:实现一个通用的远程服务Mock框架,可通过实现GenericService接口处理所有服务请求。</p>
 <p>在 Java 代码中实现 <code>GenericService</code> 接口:</p>
 <pre><code class="language-java"><span class="hljs-keyword">package</span> com.foo;
diff --git a/zh-cn/docs/user/demos/graceful-shutdown.html b/zh-cn/docs/user/demos/graceful-shutdown.html
index 8144c34..6303ce5 100644
--- a/zh-cn/docs/user/demos/graceful-shutdown.html
+++ b/zh-cn/docs/user/demos/graceful-shutdown.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 是通过 JDK 的 ShutdownHook 来完成优雅停机的,所以如果用户使用 <code>kill -9 PID</code> 等强制关闭指令,是不会执行优雅停机的,只有通过 <code>kill PID</code> 时,才会执行。</p>
 <h2>原理</h2>
 <h3>服务提供方</h3>
diff --git a/zh-cn/docs/user/demos/group-merger.html b/zh-cn/docs/user/demos/group-merger.html
index 3f3b335..317f386 100644
--- a/zh-cn/docs/user/demos/group-merger.html
+++ b/zh-cn/docs/user/demos/group-merger.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>按组合并返回结果 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>,比如菜单服务,接口一样,但有多种实现,用group区分,现在消费方需从每种group中调用一次返回结果,合并结果返回,这样就可以实现聚合菜单项。</p>
 <p>相关代码可以参考 <a href="https://github.com/apache/dubbo-samples/tree/master/java/dubbo-samples-merge">dubbo 项目中的示例</a></p>
 <h2>配置</h2>
diff --git a/zh-cn/docs/user/demos/hostname-binding.html b/zh-cn/docs/user/demos/hostname-binding.html
index 8e6cf5f..c7a5dbb 100644
--- a/zh-cn/docs/user/demos/hostname-binding.html
+++ b/zh-cn/docs/user/demos/hostname-binding.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>查找顺序</h2>
 <p>缺省主机 IP 查找顺序:</p>
 <ul>
diff --git a/zh-cn/docs/user/demos/index.html b/zh-cn/docs/user/demos/index.html
index 65117ac..ecefcfa 100644
--- a/zh-cn/docs/user/demos/index.html
+++ b/zh-cn/docs/user/demos/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/user/demos/introduction.html b/zh-cn/docs/user/demos/introduction.html
index 41e208b..e2abde8 100644
--- a/zh-cn/docs/user/demos/introduction.html
+++ b/zh-cn/docs/user/demos/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><img src="../sources/images/check.gif" alt="warning">想完整的运行起来,请参见:<a href="quickstart.md">快速启动</a>,这里只列出各种场景的配置方式。
 <img src="../sources/images/check.gif" alt="warning">以下示例全部使用基于Spring的<a href="../configuration/xml.md">Xml配置</a>作为参考,如果不想使用Spring,而希望通过API的方式进行调用,请参见:<a href="../configuration/api.md">API配置</a></p>
 </blockquote>
diff --git a/zh-cn/docs/user/demos/lazy-connect.html b/zh-cn/docs/user/demos/lazy-connect.html
index 1fab9b2..e4ce154 100644
--- a/zh-cn/docs/user/demos/lazy-connect.html
+++ b/zh-cn/docs/user/demos/lazy-connect.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>延迟连接用于减少长连接数。当有调用发起时,再创建长连接。<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:protocol</span> <span class="hljs-attr">name</span>=<span class="hljs-string">"dubbo"</span> <span class="hljs-attr">lazy</span>=<span class="hljs-string">"true"</span> /&gt;</span>
 </code></pre>
diff --git a/zh-cn/docs/user/demos/loadbalance.html b/zh-cn/docs/user/demos/loadbalance.html
index 06c020c..4a38e84 100644
--- a/zh-cn/docs/user/demos/loadbalance.html
+++ b/zh-cn/docs/user/demos/loadbalance.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在集群负载均衡时,Dubbo 提供了多种均衡策略,缺省为 <code>random</code> 随机调用。</p>
 <p>可以自行扩展负载均衡策略,参见:<a href="../../dev/impls/load-balance.md">负载均衡扩展</a></p>
 <h2>负载均衡策略</h2>
diff --git a/zh-cn/docs/user/demos/local-call.html b/zh-cn/docs/user/demos/local-call.html
index 708284d..89dd100 100644
--- a/zh-cn/docs/user/demos/local-call.html
+++ b/zh-cn/docs/user/demos/local-call.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>本地调用使用了 injvm 协议,是一个伪协议,它不开启端口,不发起远程调用,只在 JVM 内直接关联,但执行 Dubbo 的 Filter 链。</p>
 <h2>配置</h2>
 <p>定义 injvm 协议</p>
diff --git a/zh-cn/docs/user/demos/local-mock.html b/zh-cn/docs/user/demos/local-mock.html
index 39bfb55..d912fa0 100644
--- a/zh-cn/docs/user/demos/local-mock.html
+++ b/zh-cn/docs/user/demos/local-mock.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>本地伪装 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 通常用于服务降级,比如某验权服务,当服务提供方全部挂掉后,客户端不抛出异常,而是通过 Mock 数据返回授权失败。</p>
 <p>在 spring 配置文件中按以下方式配置:</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:reference</span> <span class="hljs-attr">interface</span>=<span class="hljs-string">"com.foo.BarService"</span> <span class="hljs-attr">mock</span>=<span class="hljs-string">"true"</span> /&gt;</span>
diff --git a/zh-cn/docs/user/demos/local-stub.html b/zh-cn/docs/user/demos/local-stub.html
index d9de1a8..2c1798b 100644
--- a/zh-cn/docs/user/demos/local-stub.html
+++ b/zh-cn/docs/user/demos/local-stub.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>远程服务后,客户端通常只剩下接口,而实现全在服务器端,但提供方有些时候想在客户端也执行部分逻辑,比如:做 ThreadLocal 缓存,提前验证参数,调用失败后伪造容错数据等等,此时就需要在 API 中带上 Stub,客户端生成 Proxy 实例,会把 Proxy 通过构造函数传给 Stub <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>,然后把 Stub 暴露给用户,Stub 可以决定要不要去调 Proxy。</p>
 <p><img src="../sources/images/stub.jpg" alt="/user-guide/images/stub.jpg"></p>
 <p>在 spring 配置文件中按以下方式配置:</p>
diff --git a/zh-cn/docs/user/demos/logger-strategy.html b/zh-cn/docs/user/demos/logger-strategy.html
index 59fb6e7..6c843a6 100644
--- a/zh-cn/docs/user/demos/logger-strategy.html
+++ b/zh-cn/docs/user/demos/logger-strategy.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>自 <code>2.2.1</code> 开始,dubbo 开始内置 log4j、slf4j、jcl、jdk 这些日志框架的适配[1],也可以通过以下方式显式配置日志输出策略:</p>
 <ol start="0">
 <li>
diff --git a/zh-cn/docs/user/demos/multi-protocols.html b/zh-cn/docs/user/demos/multi-protocols.html
index 07d31b7..29eea80 100644
--- a/zh-cn/docs/user/demos/multi-protocols.html
+++ b/zh-cn/docs/user/demos/multi-protocols.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 允许配置多协议,在不同服务上支持不同协议或者同一服务上同时支持多种协议。</p>
 <h2>不同服务不同协议</h2>
 <p>不同服务在性能上适用不同协议进行传输,比如大数据用短连接协议,小数据大并发用长连接协议</p>
diff --git a/zh-cn/docs/user/demos/multi-registry.html b/zh-cn/docs/user/demos/multi-registry.html
index 7a847c8..dfe8c1a 100644
--- a/zh-cn/docs/user/demos/multi-registry.html
+++ b/zh-cn/docs/user/demos/multi-registry.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 支持同一服务向多注册中心同时注册,或者不同服务分别注册到不同的注册中心上去,甚至可以同时引用注册在不同注册中心上的同名服务。另外,注册中心是支持自定义扩展的 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>。</p>
 <h2>多注册中心注册</h2>
 <p>比如:中文站有些服务来不及在青岛部署,只在杭州部署,而青岛的其它应用需要引用此服务,就可以将服务同时注册到两个注册中心。</p>
diff --git a/zh-cn/docs/user/demos/multi-versions.html b/zh-cn/docs/user/demos/multi-versions.html
index 269be59..b61e787 100644
--- a/zh-cn/docs/user/demos/multi-versions.html
+++ b/zh-cn/docs/user/demos/multi-versions.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>当一个接口实现,出现不兼容升级时,可以用版本号过渡,版本号不同的服务相互间不引用。</p>
 <p>可以按照以下的步骤进行版本迁移:</p>
 <ol start="0">
diff --git a/zh-cn/docs/user/demos/netty4.html b/zh-cn/docs/user/demos/netty4.html
index a8cb3cd..326a1d6 100644
--- a/zh-cn/docs/user/demos/netty4.html
+++ b/zh-cn/docs/user/demos/netty4.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>provider端:</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:protocol</span> <span class="hljs-attr">server</span>=<span class="hljs-string">"netty4"</span> /&gt;</span>
 </code></pre>
diff --git a/zh-cn/docs/user/demos/parameter-validation.html b/zh-cn/docs/user/demos/parameter-validation.html
index 9c4f459..2c7216f 100644
--- a/zh-cn/docs/user/demos/parameter-validation.html
+++ b/zh-cn/docs/user/demos/parameter-validation.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>参数验证功能 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 是基于 <a href="https://jcp.org/en/jsr/detail?id=303">JSR303</a> 实现的,用户只需标识 JSR303 标准的验证 annotation,并通过声明 filter 来实现验证 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
 <h2>Maven 依赖</h2>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dependency</span>&gt;</span>
diff --git a/zh-cn/docs/user/demos/preflight-check.html b/zh-cn/docs/user/demos/preflight-check.html
index 91c81c8..9f6d87c 100644
--- a/zh-cn/docs/user/demos/preflight-check.html
+++ b/zh-cn/docs/user/demos/preflight-check.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止 Spring 初始化完成,以便上线时,能及早发现问题,默认  <code>check=&quot;true&quot;</code>。</p>
 <p>可以通过 <code>check=&quot;false&quot;</code> 关闭检查,比如,测试时,有些服务不关心,或者出现了循环依赖,必须有一方先启动。</p>
 <p>另外,如果你的 Spring 容器是懒加载的,或者通过 API 编程延迟引用服务,请关闭 check,否则服务临时不可用时,会抛出异常,拿到 null 引用,如果 <code>check=&quot;false&quot;</code>,总是会返回引用,当服务恢复时,能自动连上。</p>
diff --git a/zh-cn/docs/user/demos/protobuf-idl.html b/zh-cn/docs/user/demos/protobuf-idl.html
index 334b390..8680013 100644
--- a/zh-cn/docs/user/demos/protobuf-idl.html
+++ b/zh-cn/docs/user/demos/protobuf-idl.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>当前 Dubbo 的服务定义和具体的编程语言绑定,没有提供一种语言中立的服务描述格式,比如 Java 就是定义 Interface 接口,到了其他语言又得重新以另外的格式定义一遍。
 2.7.5 版本通过支持 Protobuf IDL 实现了语言中立的服务定义。</p>
 <p>日后,不论我们使用什么语言版本来开发 Dubbo 服务,都可以直接使用 IDL 定义如下服务,具体请<a href="https://github.com/apache/dubbo-samples/tree/master/java/dubbo-samples-protobuf">参见示例</a></p>
diff --git a/zh-cn/docs/user/demos/reference-config-cache.html b/zh-cn/docs/user/demos/reference-config-cache.html
index dbf882b..7069179 100644
--- a/zh-cn/docs/user/demos/reference-config-cache.html
+++ b/zh-cn/docs/user/demos/reference-config-cache.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><code>ReferenceConfig</code> 实例很重,封装了与注册中心的连接以及与提供者的连接,需要缓存。否则重复生成 <code>ReferenceConfig</code> 可能造成性能问题并且会有内存和连接泄漏。在 API 方式编程时,容易忽略此问题。</p>
 <p>因此,自 <code>2.4.0</code> 版本开始, dubbo 提供了简单的工具类 <code>ReferenceConfigCache</code>用于缓存 <code>ReferenceConfig</code> 实例。</p>
 <p>使用方式如下:</p>
diff --git a/zh-cn/docs/user/demos/registry-only.html b/zh-cn/docs/user/demos/registry-only.html
index 39564aa..ee4a3bf 100644
--- a/zh-cn/docs/user/demos/registry-only.html
+++ b/zh-cn/docs/user/demos/registry-only.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果有两个镜像环境,两个注册中心,有一个服务只在其中一个注册中心有部署,另一个注册中心还没来得及部署,而两个注册中心的其它应用都需要依赖此服务。这个时候,可以让服务提供者方只注册服务到另一注册中心,而不从另一注册中心订阅服务。</p>
 <p>禁用订阅配置</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:registry</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"hzRegistry"</span> <span class="hljs-attr">address</span>=<span class="hljs-string">"10.20.153.10:9090"</span> /&gt;</span>
diff --git a/zh-cn/docs/user/demos/result-cache.html b/zh-cn/docs/user/demos/result-cache.html
index 7290de8..92c282a 100644
--- a/zh-cn/docs/user/demos/result-cache.html
+++ b/zh-cn/docs/user/demos/result-cache.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>结果缓存 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>,用于加速热门数据的访问速度,Dubbo 提供声明式缓存,以减少用户加缓存的工作量 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
 <h2>缓存类型</h2>
 <ul>
diff --git a/zh-cn/docs/user/demos/routing-rule-deprecated.html b/zh-cn/docs/user/demos/routing-rule-deprecated.html
index abd91db..b6311aa 100644
--- a/zh-cn/docs/user/demos/routing-rule-deprecated.html
+++ b/zh-cn/docs/user/demos/routing-rule-deprecated.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>路由规则 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 决定一次 dubbo 服务调用的目标服务器,分为条件路由规则和脚本路由规则,并且支持可扩展 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
 <h2>写入路由规则</h2>
 <p>向注册中心写入路由规则的操作通常由监控中心或治理中心的页面完成</p>
diff --git a/zh-cn/docs/user/demos/routing-rule.html b/zh-cn/docs/user/demos/routing-rule.html
index bd9aa10..1c30e41 100644
--- a/zh-cn/docs/user/demos/routing-rule.html
+++ b/zh-cn/docs/user/demos/routing-rule.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在此查看<a href="./routing-rule-deprecated.md">老版本路由规则(2.6.x or before)</a></p>
 <p>路由规则在发起一次RPC调用前起到过滤目标服务器地址的作用,过滤后的地址列表,将作为消费端最终发起RPC调用的备选地址。</p>
 <ul>
diff --git a/zh-cn/docs/user/demos/serialization.html b/zh-cn/docs/user/demos/serialization.html
index 573873d..578e841 100644
--- a/zh-cn/docs/user/demos/serialization.html
+++ b/zh-cn/docs/user/demos/serialization.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>启用Kryo和FST</h2>
 <p>使用Kryo和FST非常简单,只需要在dubbo RPC的XML配置中添加一个属性即可:</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:protocol</span> <span class="hljs-attr">name</span>=<span class="hljs-string">"dubbo"</span> <span class="hljs-attr">serialization</span>=<span class="hljs-string">"kryo"</span>/&gt;</span>
diff --git a/zh-cn/docs/user/demos/service-container.html b/zh-cn/docs/user/demos/service-container.html
index c497f1f..6cde17f 100644
--- a/zh-cn/docs/user/demos/service-container.html
+++ b/zh-cn/docs/user/demos/service-container.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>服务容器是一个 standalone 的启动程序,因为后台服务不需要 Tomcat 或 JBoss 等 Web 容器的功能,如果硬要用 Web 容器去加载服务提供方,增加复杂性,也浪费资源。</p>
 <p>服务容器只是一个简单的 Main 方法,并加载一个简单的 Spring 容器,用于暴露服务。</p>
 <p>服务容器的加载内容可以扩展,内置了 spring, jetty, log4j 等加载,可通过<a href="http://dubbo.apache.org/zh-cn/docs/dev/impls/container.html">容器扩展点</a>进行扩展。配置配在 java 命令的 -D 参数或者 <code>dubbo.properties</code> 中。</p>
diff --git a/zh-cn/docs/user/demos/service-downgrade.html b/zh-cn/docs/user/demos/service-downgrade.html
index beed4d4..4087019 100644
--- a/zh-cn/docs/user/demos/service-downgrade.html
+++ b/zh-cn/docs/user/demos/service-downgrade.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>可以通过服务降级功能 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 临时屏蔽某个出错的非关键服务,并定义降级后的返回策略。</p>
 <p>向注册中心写入动态配置覆盖规则:</p>
 <pre><code class="language-java">RegistryFactory registryFactory = ExtensionLoader.getExtensionLoader(RegistryFactory<span class="hljs-class">.<span class="hljs-keyword">class</span>).<span class="hljs-title">getAdaptiveExtension</span>()</span>;
diff --git a/zh-cn/docs/user/demos/service-group.html b/zh-cn/docs/user/demos/service-group.html
index 602c5de..6b3031d 100644
--- a/zh-cn/docs/user/demos/service-group.html
+++ b/zh-cn/docs/user/demos/service-group.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>当一个接口有多种实现时,可以用 group 区分。</p>
 <h2>服务</h2>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:service</span> <span class="hljs-attr">group</span>=<span class="hljs-string">"feedback"</span> <span class="hljs-attr">interface</span>=<span class="hljs-string">"com.xxx.IndexService"</span> /&gt;</span>
diff --git a/zh-cn/docs/user/demos/set-host.html b/zh-cn/docs/user/demos/set-host.html
index a3b7f86..3ff0b30 100644
--- a/zh-cn/docs/user/demos/set-host.html
+++ b/zh-cn/docs/user/demos/set-host.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>在<code>dubbo</code>中,<code>provider</code>启动时主要做两个事情,一是启动server,二是向注册中心注册服务.启动server时需要绑定socket,向注册中心注册服务时也需要发送socket唯一标识服务地址.</p>
 <ol>
 <li><code>dubbo</code>中不设置<code>host</code>时默认<code>host</code>是什么?</li>
diff --git a/zh-cn/docs/user/demos/simplify-registry-data.html b/zh-cn/docs/user/demos/simplify-registry-data.html
index 3d7e345..dc06d38 100644
--- a/zh-cn/docs/user/demos/simplify-registry-data.html
+++ b/zh-cn/docs/user/demos/simplify-registry-data.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>dubbo provider中的服务配置项有接近<a href="http://dubbo.apache.org/en-us/docs/user/references/xml/dubbo-service.html">30个配置项</a>。 排除注册中心服务治理需要之外,很大一部分配置项是provider自己使用,不需要透传给消费者。这部分数据不需要进入注册中心,而只需要以key-value形式持久化存储。</p>
 <p>dubbo consumer中的配置项也有<a href="http://dubbo.apache.org/en-us/docs/user/references/xml/dubbo-reference.html">20+个配置项</a>。在注册中心之中,服务消费者列表中只需要关注application,version,group,ip,dubbo版本等少量配置,其他配置也可以以key-value形式持久化存储。</p>
 <p>这些数据是以服务为维度注册进入注册中心,导致了数据量的膨胀,进而引发注册中心(如zookeeper)的网络开销增大,性能降低。</p>
diff --git a/zh-cn/docs/user/demos/static-service.html b/zh-cn/docs/user/demos/static-service.html
index 834b17b..60e5379 100644
--- a/zh-cn/docs/user/demos/static-service.html
+++ b/zh-cn/docs/user/demos/static-service.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>有时候希望人工管理服务提供者的上线和下线,此时需将注册中心标识为非动态管理模式。</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:registry</span> <span class="hljs-attr">address</span>=<span class="hljs-string">"10.20.141.150:9090"</span> <span class="hljs-attr">dynamic</span>=<span class="hljs-string">"false"</span> /&gt;</span>
 </code></pre>
diff --git a/zh-cn/docs/user/demos/stickiness.html b/zh-cn/docs/user/demos/stickiness.html
index 8ed0e1b..c7a48f6 100644
--- a/zh-cn/docs/user/demos/stickiness.html
+++ b/zh-cn/docs/user/demos/stickiness.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>粘滞连接用于有状态服务,尽可能让客户端总是向同一提供者发起调用,除非该提供者挂了,再连另一台。</p>
 <p>粘滞连接将自动开启<a href="./lazy-connect.md">延迟连接</a>,以减少长连接数。</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:reference</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"xxxService"</span> <span class="hljs-attr">interface</span>=<span class="hljs-string">"com.xxx.XxxService"</span> <span class="hljs-attr">sticky</span>=<span class="hljs-string">"true"</span> /&gt;</span>
diff --git a/zh-cn/docs/user/demos/subscribe-only.html b/zh-cn/docs/user/demos/subscribe-only.html
index f0524df..03675a0 100644
--- a/zh-cn/docs/user/demos/subscribe-only.html
+++ b/zh-cn/docs/user/demos/subscribe-only.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>为方便开发测试,经常会在线下共用一个所有服务可用的注册中心,这时,如果一个正在开发中的服务提供者注册,可能会影响消费者不能正常运行。</p>
 <p>可以让服务提供者开发方,只订阅服务(开发的服务可能依赖其它服务),而不注册正在开发的服务,通过直连测试正在开发的服务。</p>
 <p><img src="../sources/images/subscribe-only.jpg" alt="/user-guide/images/subscribe-only.jpg"></p>
diff --git a/zh-cn/docs/user/demos/thread-model.html b/zh-cn/docs/user/demos/thread-model.html
index 99e262b..d3d2c2a 100644
--- a/zh-cn/docs/user/demos/thread-model.html
+++ b/zh-cn/docs/user/demos/thread-model.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>如果事件处理的逻辑能迅速完成,并且不会发起新的 IO 请求,比如只是在内存中记个标识,则直接在 IO 线程上处理更快,因为减少了线程池调度。</p>
 <p>但如果事件处理逻辑较慢,或者需要发起新的 IO 请求,比如需要查询数据库,则必须派发到线程池,否则 IO 线程阻塞,将导致不能接收其它请求。</p>
 <p>如果用 IO 线程处理事件,又在事件处理过程中发起新的 IO 请求,比如在连接事件中发起登录请求,会报“可能引发死锁”异常,但不会真死锁。</p>
diff --git a/zh-cn/docs/user/demos/tls.html b/zh-cn/docs/user/demos/tls.html
index bf16f30..874aabd 100644
--- a/zh-cn/docs/user/demos/tls.html
+++ b/zh-cn/docs/user/demos/tls.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>2.7.5 版本在传输链路的安全性上做了很多工作,对于内置的 Dubbo Netty Server 和新引入的 gRPC 协议都提供了基于 TLS 的安全链路传输机制。</p>
 <p>TLS 的配置都有统一的入口,如下所示:</p>
 <p><strong>Provider 端</strong></p>
diff --git a/zh-cn/docs/user/demos/token-authorization.html b/zh-cn/docs/user/demos/token-authorization.html
index 420e0dc..d703ef3 100644
--- a/zh-cn/docs/user/demos/token-authorization.html
+++ b/zh-cn/docs/user/demos/token-authorization.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>通过令牌验证在注册中心控制权限,以决定要不要下发令牌给消费者,可以防止消费者绕过注册中心访问提供者,另外通过注册中心可灵活改变授权方式,而不需修改或升级提供者</p>
 <p><img src="../sources/images/dubbo-token.jpg" alt="/user-guide/images/dubbo-token.jpg"></p>
 <p>可以全局设置开启令牌验证:</p>
diff --git a/zh-cn/docs/user/dependencies.html b/zh-cn/docs/user/dependencies.html
index 608216c..608f8a5 100644
--- a/zh-cn/docs/user/dependencies.html
+++ b/zh-cn/docs/user/dependencies.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>必须依赖</h2>
 <p>JDK 1.6+ <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
 <h2>缺省依赖</h2>
diff --git a/zh-cn/docs/user/languages/erlang/reference.html b/zh-cn/docs/user/languages/erlang/reference.html
index 826664f..623fb36 100644
--- a/zh-cn/docs/user/languages/erlang/reference.html
+++ b/zh-cn/docs/user/languages/erlang/reference.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>基础配置</h2>
 <p>消费者配置项需要添加到<code>sys.config</code>文件<code>dubboerl</code>应用配置项里。</p>
 <pre><code class="language-erlang">{dubboerl,[
diff --git a/zh-cn/docs/user/languages/erlang/serialization.html b/zh-cn/docs/user/languages/erlang/serialization.html
index aecea18..4d27c68 100644
--- a/zh-cn/docs/user/languages/erlang/serialization.html
+++ b/zh-cn/docs/user/languages/erlang/serialization.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>当前该库只实现了<code>dubbo://</code>通讯协议。</p>
 <p>序列化方式实现了<code>hessian</code>和<code>json</code>两种方式。</p>
 <h2>配置样例</h2>
diff --git a/zh-cn/docs/user/languages/erlang/service.html b/zh-cn/docs/user/languages/erlang/service.html
index ad13819..eff8659 100644
--- a/zh-cn/docs/user/languages/erlang/service.html
+++ b/zh-cn/docs/user/languages/erlang/service.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>基本配置</h2>
 <p>提供者配置项需要添加到<code>sys.config</code>文件<code>dubboerl</code>应用配置项里。</p>
 <pre><code class="language-erlang">{dubboerl,[
diff --git a/zh-cn/docs/user/languages/erlang/start.html b/zh-cn/docs/user/languages/erlang/start.html
index 40a70b5..502ae45 100644
--- a/zh-cn/docs/user/languages/erlang/start.html
+++ b/zh-cn/docs/user/languages/erlang/start.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>建议先使用java定义接口jar,并使用<a href="https://github.com/apache/dubbo-erlang/tree/master/tools/erlanalysis">erlanalysis</a> 工具解析java接口至Erlang lib</p>
 <h2>导入依赖库</h2>
 <h3>使用 Rebar 编译工具。</h3>
diff --git a/zh-cn/docs/user/maturity.html b/zh-cn/docs/user/maturity.html
index 56bae80..59272ed 100644
--- a/zh-cn/docs/user/maturity.html
+++ b/zh-cn/docs/user/maturity.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>功能成熟度</h2>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/new-features-in-a-glance.html b/zh-cn/docs/user/new-features-in-a-glance.html
index 84123b4..180dd8c 100644
--- a/zh-cn/docs/user/new-features-in-a-glance.html
+++ b/zh-cn/docs/user/new-features-in-a-glance.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>[TOC]</p>
 <h2>版本速览</h2>
 <p>Dubbo 社区目前主力维护的有 2.6.x 和 2.7.x 两大版本,其中,</p>
diff --git a/zh-cn/docs/user/perf-test.html b/zh-cn/docs/user/perf-test.html
index 205838a..b5ff8e3 100644
--- a/zh-cn/docs/user/perf-test.html
+++ b/zh-cn/docs/user/perf-test.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>测试说明</h2>
 <ol>
 <li>本次性能测试,测试了 dubbo 2.0 所有支持的协议在不同大小和数据类型下的表现,并与 dubbo 1.0 进行了对比。</li>
diff --git a/zh-cn/docs/user/preface/architecture.html b/zh-cn/docs/user/preface/architecture.html
index eb0ed9d..755bd97 100644
--- a/zh-cn/docs/user/preface/architecture.html
+++ b/zh-cn/docs/user/preface/architecture.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><img src="../sources/images/dubbo-architecture.jpg" alt="dubbo-architucture"></p>
 <h5>节点角色说明</h5>
 <table>
diff --git a/zh-cn/docs/user/preface/background.html b/zh-cn/docs/user/preface/background.html
index 2cfc4bc..60d0197 100644
--- a/zh-cn/docs/user/preface/background.html
+++ b/zh-cn/docs/user/preface/background.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。</p>
 <p><img src="../sources/images/dubbo-architecture-roadmap.jpg" alt="image"></p>
 <h4>单一应用架构</h4>
diff --git a/zh-cn/docs/user/preface/index.html b/zh-cn/docs/user/preface/index.html
index a60a4f0..e8d7ea7 100644
--- a/zh-cn/docs/user/preface/index.html
+++ b/zh-cn/docs/user/preface/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/user/preface/requirements.html b/zh-cn/docs/user/preface/requirements.html
index ca3528d..fc68c76 100644
--- a/zh-cn/docs/user/preface/requirements.html
+++ b/zh-cn/docs/user/preface/requirements.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><img src="../sources/images/dubbo-service-governance.jpg" alt="image"></p>
 <p>在大规模服务化之前,应用可能只是通过 RMI 或 Hessian 等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过 F5 等硬件进行负载均衡。</p>
 <p><strong>当服务越来越多时,服务 URL 配置管理变得非常困难,F5 硬件负载均衡器的单点压力也越来越大。</strong> 此时需要一个服务注册中心,动态地注册和发现服务,使服务的位置透明。并通过在消费方获取服务提供方地址列表,实现软负载均衡和 Failover,降低对 F5 硬件负载均衡器的依赖,也能减少部分成本。</p>
diff --git a/zh-cn/docs/user/preface/usage.html b/zh-cn/docs/user/preface/usage.html
index 4ef3a85..7e052a2 100644
--- a/zh-cn/docs/user/preface/usage.html
+++ b/zh-cn/docs/user/preface/usage.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>本地服务 Spring 配置</h2>
 <p>local.xml:</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">bean</span> <span class="hljs-attr">id</span>=<span class="hljs-string">“xxxService”</span> <span class="hljs-attr">class</span>=<span class="hljs-string">“com.xxx.XxxServiceImpl”</span> /&gt;</span>
diff --git a/zh-cn/docs/user/quick-start.html b/zh-cn/docs/user/quick-start.html
index 78a2dd5..97edfe0 100644
--- a/zh-cn/docs/user/quick-start.html
+++ b/zh-cn/docs/user/quick-start.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 采用全 Spring 配置方式,透明化接入应用,对应用没有任何 API 侵入,只需用 Spring 加载 Dubbo 的配置即可,Dubbo 基于 <a href="https://docs.spring.io/spring/docs/4.2.x/spring-framework-reference/html/xsd-configuration.html">Spring 的 Schema 扩展</a> 进行加载。</p>
 <p>如果不想使用 Spring 配置,可以通过 <a href="./configuration/api.md">API 的方式</a> 进行调用。</p>
 <h2>服务提供者</h2>
diff --git a/zh-cn/docs/user/recommend.html b/zh-cn/docs/user/recommend.html
index aff2216..0523c82 100644
--- a/zh-cn/docs/user/recommend.html
+++ b/zh-cn/docs/user/recommend.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>在 Provider 端尽量多配置 Consumer 端属性</h2>
 <p>原因如下:</p>
 <ul>
diff --git a/zh-cn/docs/user/references/api.html b/zh-cn/docs/user/references/api.html
index cbd4c67..fe76765 100644
--- a/zh-cn/docs/user/references/api.html
+++ b/zh-cn/docs/user/references/api.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 的常规功能,都保持零侵入,但有些功能不得不用 API 侵入才能实现 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>。</p>
 <p>API 汇总如下:</p>
 <h2>配置 API</h2>
diff --git a/zh-cn/docs/user/references/maven.html b/zh-cn/docs/user/references/maven.html
index 7e5558b..b7f6f4f 100644
--- a/zh-cn/docs/user/references/maven.html
+++ b/zh-cn/docs/user/references/maven.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <h2>启动一个简易注册中心</h2>
 <p>以指定的9099端口启动一个简易注册中心 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>:</p>
 <pre><code class="language-sh">mvn dubbo:registry -Dport=9099 
diff --git a/zh-cn/docs/user/references/metadata/introduction.html b/zh-cn/docs/user/references/metadata/introduction.html
index 1a00d65..42a0449 100644
--- a/zh-cn/docs/user/references/metadata/introduction.html
+++ b/zh-cn/docs/user/references/metadata/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>dubbo provider中的服务配置项有接近<a href="http://dubbo.apache.org/en-us/docs/user/references/xml/dubbo-service.html">30个配置项</a>。 排除注册中心服务治理需要之外,很大一部分配置项是provider自己使用,不需要透传给消费者。这部分数据不需要进入注册中心,而只需要以key-value形式持久化存储。
 dubbo consumer中的配置项也有<a href="http://dubbo.apache.org/en-us/docs/user/references/xml/dubbo-reference.html">20+个配置项</a>。在注册中心之中,服务消费者列表中只需要关注application,version,group,ip,dubbo版本等少量配置,其他配置也可以以key-value形式持久化存储。
 这些数据是以服务为维度注册进入注册中心,导致了数据量的膨胀,进而引发注册中心(如zookeeper)的网络开销增大,性能降低。<br>
diff --git a/zh-cn/docs/user/references/metadata/metadata-redis.html b/zh-cn/docs/user/references/metadata/metadata-redis.html
index 483c93e..2c80bde 100644
--- a/zh-cn/docs/user/references/metadata/metadata-redis.html
+++ b/zh-cn/docs/user/references/metadata/metadata-redis.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/user/references/metadata/metadata-zookeeper.html b/zh-cn/docs/user/references/metadata/metadata-zookeeper.html
index e97bcb1..00daf7f 100644
--- a/zh-cn/docs/user/references/metadata/metadata-zookeeper.html
+++ b/zh-cn/docs/user/references/metadata/metadata-zookeeper.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
diff --git a/zh-cn/docs/user/references/protocol/dubbo.html b/zh-cn/docs/user/references/protocol/dubbo.html
index a75bac1..01c307e 100644
--- a/zh-cn/docs/user/references/protocol/dubbo.html
+++ b/zh-cn/docs/user/references/protocol/dubbo.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 缺省协议采用单一长连接和 NIO 异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。</p>
 <p>反之,Dubbo 缺省协议不适合传送大数据量的服务,比如传文件,传视频等,除非请求量很低。</p>
 <p><img src="../../sources/images/dubbo-protocol.jpg" alt="dubbo-protocol.jpg"></p>
diff --git a/zh-cn/docs/user/references/protocol/gRPC.html b/zh-cn/docs/user/references/protocol/gRPC.html
index 96f6860..c05e502 100644
--- a/zh-cn/docs/user/references/protocol/gRPC.html
+++ b/zh-cn/docs/user/references/protocol/gRPC.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Dubbo 自 2.7.5 版本开始支持 gRPC 协议,对于计划使用 HTTP/2 通信,或者想利用 gRPC 带来的 Stream、反压、Reactive 编程等能力的开发者来说,
 都可以考虑启用 gRPC 协议。</p>
 <h2>支持 gRPC 的好处</h2>
diff --git a/zh-cn/docs/user/references/protocol/hessian.html b/zh-cn/docs/user/references/protocol/hessian.html
index c442b28..e795f26 100644
--- a/zh-cn/docs/user/references/protocol/hessian.html
+++ b/zh-cn/docs/user/references/protocol/hessian.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Hessian <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 协议用于集成 Hessian 的服务,Hessian 底层采用 Http 通讯,采用 Servlet 暴露服务,Dubbo 缺省内嵌 Jetty 作为服务器实现。</p>
 <p>Dubbo 的 Hessian 协议可以和原生 Hessian 服务互操作,即:</p>
 <ul>
diff --git a/zh-cn/docs/user/references/protocol/http.html b/zh-cn/docs/user/references/protocol/http.html
index 29e0775..0291d7c 100644
--- a/zh-cn/docs/user/references/protocol/http.html
+++ b/zh-cn/docs/user/references/protocol/http.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>基于 HTTP 表单的远程调用协议,采用 Spring 的 HttpInvoker 实现 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
 <h2>特性</h2>
 <ul>
diff --git a/zh-cn/docs/user/references/protocol/introduction.html b/zh-cn/docs/user/references/protocol/introduction.html
index a22c6cf..21dc840 100644
--- a/zh-cn/docs/user/references/protocol/introduction.html
+++ b/zh-cn/docs/user/references/protocol/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>推荐使用 Dubbo 协议。各协议的性能情况,请参见:<a href="../../perf-test.md">性能测试报告</a></p>
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/docs/user/references/protocol/memcached.html b/zh-cn/docs/user/references/protocol/memcached.html
index 1543032..7305d2a 100644
--- a/zh-cn/docs/user/references/protocol/memcached.html
+++ b/zh-cn/docs/user/references/protocol/memcached.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>基于 memcached <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 实现的 RPC 协议 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
 <h2>注册 memcached 服务的地址</h2>
 <pre><code class="language-java">RegistryFactory registryFactory = ExtensionLoader.getExtensionLoader(RegistryFactory<span class="hljs-class">.<span class="hljs-keyword">class</span>).<span class="hljs-title">getAdaptiveExtension</span>()</span>;
diff --git a/zh-cn/docs/user/references/protocol/redis.html b/zh-cn/docs/user/references/protocol/redis.html
index 89d6df1..512057f 100644
--- a/zh-cn/docs/user/references/protocol/redis.html
+++ b/zh-cn/docs/user/references/protocol/redis.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>基于 Redis <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 实现的 RPC 协议 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
 <h2>注册 redis 服务的地址</h2>
 <pre><code class="language-java">RegistryFactory registryFactory = ExtensionLoader.getExtensionLoader(RegistryFactory<span class="hljs-class">.<span class="hljs-keyword">class</span>).<span class="hljs-title">getAdaptiveExtension</span>()</span>;
diff --git a/zh-cn/docs/user/references/protocol/rest.html b/zh-cn/docs/user/references/protocol/rest.html
index 1367b45..2665b04 100644
--- a/zh-cn/docs/user/references/protocol/rest.html
+++ b/zh-cn/docs/user/references/protocol/rest.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>基于标准的Java REST API——JAX-RS 2.0(Java API for RESTful Web Services的简写)实现的REST调用支持</p>
 <h2>快速入门</h2>
 <p>在dubbo中开发一个REST风格的服务会比较简单,下面以一个注册用户的简单服务为例说明。</p>
diff --git a/zh-cn/docs/user/references/protocol/rmi.html b/zh-cn/docs/user/references/protocol/rmi.html
index 5ed52df..da89931 100644
--- a/zh-cn/docs/user/references/protocol/rmi.html
+++ b/zh-cn/docs/user/references/protocol/rmi.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>RMI 协议采用 JDK 标准的 <code>java.rmi.*</code> 实现,采用阻塞式短连接和 JDK 标准序列化方式。</p>
 <p>注意:如果正在使用 RMI 提供服务给外部访问 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>,同时应用里依赖了老的 common-collections 包 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup> 的情况下,存在反序列化安全风险 <sup class="footnote-ref"><a href="#fn3" id="fnref3">[3]</a></sup>。</p>
 <h2>特性</h2>
diff --git a/zh-cn/docs/user/references/protocol/thrift.html b/zh-cn/docs/user/references/protocol/thrift.html
index 5fb9c00..0af8e0d 100644
--- a/zh-cn/docs/user/references/protocol/thrift.html
+++ b/zh-cn/docs/user/references/protocol/thrift.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>当前 dubbo 支持 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>的 thrift 协议是对 thrift 原生协议 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup> 的扩展,在原生协议的基础上添加了一些额外的头信息,比如 service name,magic number 等。</p>
 <p>使用 dubbo thrift 协议同样需要使用 thrift 的 idl compiler 编译生成相应的 java 代码,后续版本中会在这方面做一些增强。</p>
 <h2>依赖</h2>
diff --git a/zh-cn/docs/user/references/protocol/webservice.html b/zh-cn/docs/user/references/protocol/webservice.html
index 8435727..f451fb4 100644
--- a/zh-cn/docs/user/references/protocol/webservice.html
+++ b/zh-cn/docs/user/references/protocol/webservice.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>基于 WebService 的远程调用协议,基于 <a href="http://cxf.apache.org">Apache CXF</a> <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 的 <code>frontend-simple</code> 和 <code>transports-http</code> 实现 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
 <p>可以和原生 WebService 服务互操作,即:</p>
 <ul>
diff --git a/zh-cn/docs/user/references/qos.html b/zh-cn/docs/user/references/qos.html
index 4767980..8a2ad36 100644
--- a/zh-cn/docs/user/references/qos.html
+++ b/zh-cn/docs/user/references/qos.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>dubbo <code>2.5.8</code> 新版本增加了 QOS 模块,提供了新的 telnet 命令支持。</p>
 <h2>端口</h2>
 <p>新版本的 telnet 端口 与 dubbo 协议的端口是不同的端口,默认为 <code>22222</code>,可通过配置文件<code>dubbo.properties</code> 修改:</p>
diff --git a/zh-cn/docs/user/references/registry/introduction.html b/zh-cn/docs/user/references/registry/introduction.html
index d217efe..0c39c9f 100644
--- a/zh-cn/docs/user/references/registry/introduction.html
+++ b/zh-cn/docs/user/references/registry/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>推荐使用 <a href="./zookeeper.md">Zookeeper 注册中心</a></p>
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/docs/user/references/registry/multicast.html b/zh-cn/docs/user/references/registry/multicast.html
index 51a4c65..fc1add4 100644
--- a/zh-cn/docs/user/references/registry/multicast.html
+++ b/zh-cn/docs/user/references/registry/multicast.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Multicast 注册中心不需要启动任何中心节点,只要广播地址一样,就可以互相发现。</p>
 <p><img src="../../sources/images/multicast.jpg" alt="/user-guide/images/multicast.jpg"></p>
 <ol start="0">
diff --git a/zh-cn/docs/user/references/registry/nacos.html b/zh-cn/docs/user/references/registry/nacos.html
index 3753ad1..3e89c5d 100644
--- a/zh-cn/docs/user/references/registry/nacos.html
+++ b/zh-cn/docs/user/references/registry/nacos.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Nacos 是 Dubbo 生态系统中重要的注册中心实现,其中 <a href="https://github.com/apache/incubator-dubbo/tree/master/dubbo-registry/dubbo-registry-nacos"><code>dubbo-registry-nacos</code></a> 则是 Dubbo 融合 Nacos 注册中心的实现。</p>
 <h2>预备工作</h2>
 <p>当您将 <a href="https://github.com/apache/incubator-dubbo/tree/master/dubbo-registry/dubbo-registry-nacos"><code>dubbo-registry-nacos</code></a> 整合到您的 Dubbo 工程之前,请确保后台已经启动 Nacos 服务。如果您尚且不熟悉 Nacos 的基本使用的话,可先行参考 <a href="https://nacos.io/en-us/docs/quick-start.html">Nacos 快速入门</a>。建议使用 Nacos <code>1.0.0</code> 及以上的版本。</p>
diff --git a/zh-cn/docs/user/references/registry/redis.html b/zh-cn/docs/user/references/registry/redis.html
index 32be262..0340a15 100644
--- a/zh-cn/docs/user/references/registry/redis.html
+++ b/zh-cn/docs/user/references/registry/redis.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>基于 Redis <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 实现的注册中心 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
 <p><img src="../../sources/images/dubbo-redis-registry.jpg" alt="/user-guide/images/dubbo-redis-registry.jpg"></p>
 <p>使用 Redis 的 Key/Map 结构存储数据结构:</p>
diff --git a/zh-cn/docs/user/references/registry/simple.html b/zh-cn/docs/user/references/registry/simple.html
index db1475b..ec5a150 100644
--- a/zh-cn/docs/user/references/registry/simple.html
+++ b/zh-cn/docs/user/references/registry/simple.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>Simple 注册中心本身就是一个普通的 Dubbo 服务,可以减少第三方依赖,使整体通讯方式一致。</p>
 <h2>配置</h2>
 <p>将 Simple 注册中心暴露成 Dubbo 服务:</p>
diff --git a/zh-cn/docs/user/references/registry/zookeeper.html b/zh-cn/docs/user/references/registry/zookeeper.html
index 7510617..6b6b97b 100644
--- a/zh-cn/docs/user/references/registry/zookeeper.html
+++ b/zh-cn/docs/user/references/registry/zookeeper.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><a href="http://zookeeper.apache.org">Zookeeper</a> 是 Apache Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,并推荐使用 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>。</p>
 <p><img src="../../sources/images/zookeeper.jpg" alt="/user-guide/images/zookeeper.jpg"></p>
 <p>流程说明:</p>
diff --git a/zh-cn/docs/user/references/telnet.html b/zh-cn/docs/user/references/telnet.html
index 963ecfb..034b43d 100644
--- a/zh-cn/docs/user/references/telnet.html
+++ b/zh-cn/docs/user/references/telnet.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>从 <code>2.0.5</code> 版本开始,dubbo 开始支持通过 telnet 命令来进行服务治理。</p>
 <h2>使用</h2>
 <pre><code class="language-sh">telnet localhost 20880
diff --git a/zh-cn/docs/user/references/xml/dubbo-application.html b/zh-cn/docs/user/references/xml/dubbo-application.html
index 53de3c9..8d01783 100644
--- a/zh-cn/docs/user/references/xml/dubbo-application.html
+++ b/zh-cn/docs/user/references/xml/dubbo-application.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>应用信息配置。对应的配置类:<code>org.apache.dubbo.config.ApplicationConfig</code></p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-argument.html b/zh-cn/docs/user/references/xml/dubbo-argument.html
index bd33c0d..2c32354 100644
--- a/zh-cn/docs/user/references/xml/dubbo-argument.html
+++ b/zh-cn/docs/user/references/xml/dubbo-argument.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>方法参数配置。对应的配置类: <code>org.apache.dubbo.config.ArgumentConfig</code>。该标签为 <code>&lt;dubbo:method&gt;</code> 的子标签,用于方法参数的特征描述,比如:</p>
 <pre><code class="language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dubbo:method</span> <span class="hljs-attr">name</span>=<span class="hljs-string">"findXxx"</span> <span class="hljs-attr">timeout</span>=<span class="hljs-string">"3000"</span> <span class="hljs-attr">retries</span>=<span class="hljs-string">"2"</span>&gt;</span>
     <span class="hljs-tag">&lt;<span class="hljs-name">dubbo:argument</span> <span class="hljs-attr">index</span>=<span class="hljs-string">"0"</span> <span class="hljs-attr">callback</span>=<span class="hljs-string">"true"</span> /&gt;</span>
diff --git a/zh-cn/docs/user/references/xml/dubbo-config-center.html b/zh-cn/docs/user/references/xml/dubbo-config-center.html
index 27c8e1c..8eaa576 100644
--- a/zh-cn/docs/user/references/xml/dubbo-config-center.html
+++ b/zh-cn/docs/user/references/xml/dubbo-config-center.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>配置中心。对应的配置类:<code>org.apache.dubbo.config.ConfigCenterConfig</code></p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-consumer.html b/zh-cn/docs/user/references/xml/dubbo-consumer.html
index 21e8027..b7b30f4 100644
--- a/zh-cn/docs/user/references/xml/dubbo-consumer.html
+++ b/zh-cn/docs/user/references/xml/dubbo-consumer.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>服务消费者缺省值配置。配置类: <code>org.apache.dubbo.config.ConsumerConfig</code> 。同时该标签为 <code>&lt;dubbo:reference&gt;</code> 标签的缺省值设置。</p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-method.html b/zh-cn/docs/user/references/xml/dubbo-method.html
index b06a31d..2fc4a7d 100644
--- a/zh-cn/docs/user/references/xml/dubbo-method.html
+++ b/zh-cn/docs/user/references/xml/dubbo-method.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>方法级配置。对应的配置类: <code>org.apache.dubbo.config.MethodConfig</code>。同时该标签为 <code>&lt;dubbo:service&gt;</code> 或 <code>&lt;dubbo:reference&gt;</code> 的子标签,用于控制到方法级。</p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-module.html b/zh-cn/docs/user/references/xml/dubbo-module.html
index 3577f66..16fc85b 100644
--- a/zh-cn/docs/user/references/xml/dubbo-module.html
+++ b/zh-cn/docs/user/references/xml/dubbo-module.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>模块信息配置。对应的配置类 <code>org.apache.dubbo.config.ModuleConfig</code></p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-monitor.html b/zh-cn/docs/user/references/xml/dubbo-monitor.html
index 3eafd6b..c2a75c8 100644
--- a/zh-cn/docs/user/references/xml/dubbo-monitor.html
+++ b/zh-cn/docs/user/references/xml/dubbo-monitor.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>监控中心配置。对应的配置类: <code>org.apache.dubbo.config.MonitorConfig</code></p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-parameter.html b/zh-cn/docs/user/references/xml/dubbo-parameter.html
index 3211690..11b846a 100644
--- a/zh-cn/docs/user/references/xml/dubbo-parameter.html
+++ b/zh-cn/docs/user/references/xml/dubbo-parameter.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>选项参数配置。对应的配置类:<code>java.util.Map</code>。同时该标签为<code>&lt;dubbo:protocol&gt;</code>或<code>&lt;dubbo:service&gt;</code>或<code>&lt;dubbo:provider&gt;</code>或<code>&lt;dubbo:reference&gt;</code>或<code>&lt;dubbo:consumer&gt;</code>的子标签,用于配置自定义参数,该配置项将作为扩展点设置自定义参数使用。</p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-protocol.html b/zh-cn/docs/user/references/xml/dubbo-protocol.html
index d9f03e1..fa3872e 100644
--- a/zh-cn/docs/user/references/xml/dubbo-protocol.html
+++ b/zh-cn/docs/user/references/xml/dubbo-protocol.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>服务提供者协议配置。对应的配置类: <code>org.apache.dubbo.config.ProtocolConfig</code>。同时,如果需要支持多协议,可以声明多个 <code>&lt;dubbo:protocol&gt;</code> 标签,并在 <code>&lt;dubbo:service&gt;</code> 中通过 <code>protocol</code> 属性指定使用的协议。</p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-provider.html b/zh-cn/docs/user/references/xml/dubbo-provider.html
index dadebaa..3385354 100644
--- a/zh-cn/docs/user/references/xml/dubbo-provider.html
+++ b/zh-cn/docs/user/references/xml/dubbo-provider.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>服务提供者缺省值配置。对应的配置类: <code>org.apache.dubbo.config.ProviderConfig</code>。同时该标签为 <code>&lt;dubbo:service&gt;</code> 和 <code>&lt;dubbo:protocol&gt;</code> 标签的缺省值设置。</p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-reference.html b/zh-cn/docs/user/references/xml/dubbo-reference.html
index f77cd81..8f0667d 100644
--- a/zh-cn/docs/user/references/xml/dubbo-reference.html
+++ b/zh-cn/docs/user/references/xml/dubbo-reference.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>服务消费者引用服务配置。对应的配置类: <code>org.apache.dubbo.config.ReferenceConfig</code></p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-registry.html b/zh-cn/docs/user/references/xml/dubbo-registry.html
index 926e9f6..4e8aaf2 100644
--- a/zh-cn/docs/user/references/xml/dubbo-registry.html
+++ b/zh-cn/docs/user/references/xml/dubbo-registry.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>注册中心配置。对应的配置类: <code>org.apache.dubbo.config.RegistryConfig</code>。同时如果有多个不同的注册中心,可以声明多个 <code>&lt;dubbo:registry&gt;</code> 标签,并在 <code>&lt;dubbo:service&gt;</code> 或 <code>&lt;dubbo:reference&gt;</code> 的 <code>registry</code> 属性指定使用的注册中心。</p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/dubbo-service.html b/zh-cn/docs/user/references/xml/dubbo-service.html
index 334b62e..8017653 100644
--- a/zh-cn/docs/user/references/xml/dubbo-service.html
+++ b/zh-cn/docs/user/references/xml/dubbo-service.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>服务提供者暴露服务配置。对应的配置类:<code>org.apache.dubbo.config.ServiceConfig</code></p>
 <table>
 <thead>
diff --git a/zh-cn/docs/user/references/xml/introduction.html b/zh-cn/docs/user/references/xml/introduction.html
index 7991c7e..4a5b576 100644
--- a/zh-cn/docs/user/references/xml/introduction.html
+++ b/zh-cn/docs/user/references/xml/introduction.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>这里以 XML Config <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> 为准,列举所有配置项 <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。其它配置方式,请参见相应转换关系:<a href="../../configuration/properties.md">属性配置</a>,<a href="../../configuration/annotation.md">注解配置</a>,<a href="../../configuration/api.md">API 配置</a>。</p>
 <p>所有配置项分为三大类,参见下表中的&quot;作用&quot; 一列。</p>
 <ul>
diff --git a/zh-cn/docs/user/rest.html b/zh-cn/docs/user/rest.html
index 8692f2a..7de6e6a 100644
--- a/zh-cn/docs/user/rest.html
+++ b/zh-cn/docs/user/rest.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><strong>作者:沈理</strong></p>
 <p><strong>文档版权:<a href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0许可证 署名-禁止演绎</a></strong></p>
 <p>完善中……</p>
diff --git a/zh-cn/docs/user/serialization.html b/zh-cn/docs/user/serialization.html
index c8ea33e..76648b9 100644
--- a/zh-cn/docs/user/serialization.html
+++ b/zh-cn/docs/user/serialization.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><strong>作者:沈理</strong></p>
 <p><strong>文档版权:<a href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0许可证 署名-禁止演绎</a></strong></p>
 <p>完善中……</p>
diff --git a/zh-cn/docs/user/simple-monitor.html b/zh-cn/docs/user/simple-monitor.html
index 0851e36..dca424b 100644
--- a/zh-cn/docs/user/simple-monitor.html
+++ b/zh-cn/docs/user/simple-monitor.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><img src="sources/images/check.gif" alt="warning">监控中心也是一个标准的Dubbo服务,可以通过注册中心发现,也可以直连。</p>
 </blockquote>
 <blockquote>
diff --git a/zh-cn/docs/user/versions/index.html b/zh-cn/docs/user/versions/index.html
index 5d87ff2..e039299 100644
--- a/zh-cn/docs/user/versions/index.html
+++ b/zh-cn/docs/user/versions/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p><a href="./version-270.md">2.7.x升级步骤及注意事项</a></p>
 </div></section><footer class="footer-container"><div class="footer-body"><img src="/img/dubbo_gray.png"/><img class="apache" src="/img/apache_logo.png"/><div class="cols-container"><div class="col col-12"><h3></h3><p></p></div><div class="col col-4"><dl><dt>ASF</dt><dd><a href="http://www.apache.org" target="_self">基金会</a></dd><dd><a href="http://www.apache.org/licenses/" target="_self">证书</a></dd><dd><a href="http://www.apache.org/events/current-event" target="_self">事件</a></dd><dd><a  [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
diff --git a/zh-cn/docs/user/versions/version-270.html b/zh-cn/docs/user/versions/version-270.html
index baf85d3..c5276c0 100644
--- a/zh-cn/docs/user/versions/version-270.html
+++ b/zh-cn/docs/user/versions/version-270.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/documentation.css" />
 </head>
 <body>
-	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
+	<div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a [...]
 <p>环境要求:需要<strong>Java 8</strong>及以上版本。</p>
 <p>2.7.0版本在改造的过程中遵循了一个原则,即<strong>保持与低版本的兼容性,因此从功能层面来说它是与2.6.x及更低版本完全兼容的</strong>,而接下来将要提到的兼容性问题主要是<a href="#1.1">包重命名</a>带来的。另外,虽然功能用法保持向后兼容,但参考本文能帮助您尽快用到2.7.0版本的新特性。</p>
 <h2>升级步骤</h2>
diff --git a/zh-cn/ecology/index.html b/zh-cn/ecology/index.html
index e4c5553..5ad3ae0 100644
--- a/zh-cn/ecology/index.html
+++ b/zh-cn/ecology/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/ecology.css" />
 </head>
 <body>
-	<div id="root"><div class="ecology-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a targe [...]
+	<div id="root"><div class="ecology-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_colorful.png"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class="language-switch language-switch-normal">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_gray.png"/><ul><li class="menu-item menu-item-normal"><a targe [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
 	<script>
diff --git a/zh-cn/index.html b/zh-cn/index.html
index 583958b..828a1f0 100644
--- a/zh-cn/index.html
+++ b/zh-cn/index.html
@@ -12,7 +12,7 @@
 	<link rel="stylesheet" href="/build/home.css" />
 </head>
 <body>
-	<div id="root"><div class="home-page" data-reactroot=""><section class="top-section"><header class="header-container header-container-primary"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_white.png"/></a><div class="search search-primary"><span class="icon-search"></span></div><span class="language-switch language-switch-primary">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_white.png"/><ul><li class="menu-item [...]
+	<div id="root"><div class="home-page" data-reactroot=""><section class="top-section"><header class="header-container header-container-primary"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/dubbo_white.png"/></a><div class="search search-primary"><span class="icon-search"></span></div><span class="language-switch language-switch-primary">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/menu_white.png"/><ul><li class="menu-item [...]
 	<script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script>
 	<script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script>
 	<script>