This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch cn-site
in repository https://gitbox.apache.org/repos/asf/dubbo-website.git
The following commit(s) were added to refs/heads/cn-site by this push:
new a790268a5e deploy: da94a8ea25563bc164340546499bca7c48c0f5df
a790268a5e is described below
commit a790268a5eaa5ab5ed87f6980ae93631afb81e13
Author: AlbumenJ <[email protected]>
AuthorDate: Thu Feb 23 06:51:15 2023 +0000
deploy: da94a8ea25563bc164340546499bca7c48c0f5df
---
sitemap.xml | 2 +-
.../index.html" | 12 +++---------
.../index.html" | 10 ++--------
.../index.html" | 12 +++---------
.../index.html" | 10 ++--------
.../index.html" | 12 +++---------
.../index.html" | 12 +++---------
.../index.html" | 12 +++---------
zh-cn/blog/golang/index.html | 8 ++++----
zh-cn/blog/golang/index.xml | 2 ++
zh-cn/blog/golang/page/2/index.html | 8 ++++----
zh-cn/blog/golang/page/3/index.html | 4 ++--
zh-cn/blog/integration/index.html | 4 ++--
zh-cn/blog/integration/page/2/index.html | 4 ++--
zh-cn/blog/java/codeanalysis/index.html | 4 ++--
zh-cn/blog/java/index.html | 4 ++--
zh-cn/blog/page/6/index.html | 4 ++--
zh-cn/blog/page/7/index.html | 4 ++--
zh-cn/sitemap.xml | 2 +-
zh-cn/tags/go/index.html | 2 +-
zh-cn/tags/go/index.xml | 2 ++
zh-cn/tags/java/index.html | 2 +-
.../index.html" | 2 +-
.../index.xml" | 2 ++
24 files changed, 52 insertions(+), 88 deletions(-)
diff --git a/sitemap.xml b/sitemap.xml
index 58697ed4af..a35e6b69b7 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?><sitemapindex
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://cn.dubbo.apache.org/zh-cn/sitemap.xml</loc><lastmod>2023-02-23T13:17:10+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-02-23T11:00:42+08:00</lastmod></sitemap></sitemapindex>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8" standalone="yes"?><sitemapindex
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://cn.dubbo.apache.org/zh-cn/sitemap.xml</loc><lastmod>2023-02-23T14:46:55+08:00</lastmod></sitemap><sitemap><loc>https://cn.dubbo.apache.org/en/sitemap.xml</loc><lastmod>2023-02-23T11:00:42+08:00</lastmod></sitemap></sitemapindex>
\ No newline at end of file
diff --git
"a/zh-cn/blog/2021/01/14/dubbo-go-\346\272\220\347\240\201\347\254\224\350\256\260\344\270\200server-\347\253\257\345\274\200\345\220\257\346\234\215\345\212\241\350\277\207\347\250\213/index.html"
"b/zh-cn/blog/2021/01/14/dubbo-go-\346\272\220\347\240\201\347\254\224\350\256\260\344\270\200server-\347\253\257\345\274\200\345\220\257\346\234\215\345\212\241\350\277\207\347\250\213/index.html"
index 87aadede4b..531c696357 100644
---
"a/zh-cn/blog/2021/01/14/dubbo-go-\346\272\220\347\240\201\347\254\224\350\256\260\344\270\200server-\347\253\257\345\274\200\345\220\257\346\234\215\345\212\241\350\277\207\347\250\213/index.html"
+++
"b/zh-cn/blog/2021/01/14/dubbo-go-\346\272\220\347\240\201\347\254\224\350\256\260\344\270\200server-\347\253\257\345\274\200\345\220\257\346\234\215\345\212\241\350\277\207\347\250\213/index.html"
@@ -1,14 +1,8 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.paren
[...]
-"><meta property="og:type" content="article"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/"><meta
property="article:section" content="blog"><meta
property="article:published_time" content="2021-01-14T00:00:00+00:00"><meta
property="article:modified_time" content="2023-02-23T11:00:42+08:00"><meta
property="og:site_name" content= [...]
-"><meta itemprop=datePublished content="2021-01-14T00:00:00+00:00"><meta
itemprop=dateModified content="2023-02-23T11:00:42+08:00"><meta
itemprop=wordCount content="1273"><meta itemprop=keywords
content="Go,源码解析,"><meta name=twitter:card content="summary"><meta
name=twitter:title content="Dubbo-go 源码笔记(一)Server 端开启服务过程"><meta
name=twitter:description content="随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架
go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行
server 端 [...]
-"><script type=application/javascript>var
doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new
Date,ga("create","G-NM6FFMT51J","auto"),ga("send","pageview"))</script><script
async src=https://www.google-analytics.com/analytics.js></script>
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.paren
[...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="随着微服务架构的流行,许多高性能
rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go
框架的基本使用方法,以及从 export 调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。
-"><meta property="og:description" content="随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的
dubbo 框架 go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export
调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。
-"><meta name=twitter:description content="随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的
dubbo 框架 go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export
调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。
-"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/"><meta
property="og:title" content="Dubbo-go 源码笔记(一)Server 端开启服务过程"><meta
name=twitter:title content="Dubbo-go 源码笔记(一)Server 端开启服务过程"><meta
name=twitter:image:alt content="Apache Dubbo"><meta property="og:image"
content="/imgs/blog/dubbo-go/code1/p1.png"><meta property="og:type" c [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="本文将介绍 dubbo-go
框架的基本使用方法,以及从 export 调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。"><meta
property="og:description" content="本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行
server 端源码导读,希望能引导读者进一步认识这款框架。"><meta name=twitter:description content="本文将介绍
dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server 端源码导读,希望能引 [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_nav [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
</span></span></code></pre></div><ul><li>进入 dubbo 目录</li></ul><div
class=highlight><pre tabindex=0
style=color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code
class=language-bash data-lang=bash><span style=display:flex><span>$ <span
style=color:#b58900>cd</span> dubbo-samples/golang/helloworld/dubbo
</span></span></code></pre></div><p>进入目录后可看到四个文件夹,分别支持 go 和 java 的 client 以及
server,我们尝试运行一个 go 的 server。进入 app 子文件夹内,可以看到里面保存了 go 文件。</p><div
class=highlight><pre tabindex=0
style=color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code
class=language-bash data-lang=bash><span style=display:flex><span>$ <span
style=color:#b58900>cd</span> go-server/app
</span></span></code></pre></div><ul><li>sample 文件结构</li></ul><p>可以在 go-server
里面看到三个文件夹:app、assembly、profiles。</p><p>其中 app 文件夹下保存 go 源码,assembly
文件夹下保存可选的针对特定环境的 build 脚本,profiles 下保存配置文件。对于 dubbo-go
框架,配置文件非常重要,没有文件将导致服务无法启动。</p><ul><li>设置指向配置文件的环境变量</li></ul><p>由于 dubbo-go
框架依赖配置文件启动,让框架定位到配置文件的方式就是通过环境变量来找。对于 server
端需要两个必须配置的环境变量:CONF_PROVIDER_FILE_PATH、APP_LOG_CONF_FILE,分别应该指向服务端配置文件、日志配置文件。</p><p>在
sample 里面,我们可以使用 dev 环境,即 profiles/dev/log.yml 和 profiles/dev/server.yml
两个文件。在 ap [...]
diff --git
"a/zh-cn/blog/2021/01/14/dubbo-go\345\272\224\347\224\250\347\273\264\345\272\246\346\263\250\345\206\214\346\250\241\345\236\213/index.html"
"b/zh-cn/blog/2021/01/14/dubbo-go\345\272\224\347\224\250\347\273\264\345\272\246\346\263\250\345\206\214\346\250\241\345\236\213/index.html"
index 810a9dc458..5085ca7959 100644
---
"a/zh-cn/blog/2021/01/14/dubbo-go\345\272\224\347\224\250\347\273\264\345\272\246\346\263\250\345\206\214\346\250\241\345\236\213/index.html"
+++
"b/zh-cn/blog/2021/01/14/dubbo-go\345\272\224\347\224\250\347\273\264\345\272\246\346\263\250\345\206\214\346\250\241\345\236\213/index.html"
@@ -1,12 +1,6 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go%E5%BA%94%E7%94%A8%E7%BB%B4%E5%BA%A6%E6%B3%A8%E5%86%8C%E6%A8%A1%E5%9E%8B/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
ch [...]
-"><meta property="og:type" content="article"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go%E5%BA%94%E7%94%A8%E7%BB%B4%E5%BA%A6%E6%B3%A8%E5%86%8C%E6%A8%A1%E5%9E%8B/"><meta
property="article:section" content="blog"><meta
property="article:published_time" content="2021-01-14T00:00:00+00:00"><meta
property="article:modified_time" content="2023-02-23T11:00:42+08:00"><meta
property="og:site_name" content="Apache Dubbo"><meta itemprop=name content="
[...]
-"><meta itemprop=datePublished content="2021-01-14T00:00:00+00:00"><meta
itemprop=dateModified content="2023-02-23T11:00:42+08:00"><meta
itemprop=wordCount content="256"><meta itemprop=keywords content="Go,"><meta
name=twitter:card content="summary"><meta name=twitter:title
content="Dubbo-go应用维度注册模型"><meta name=twitter:description content="Dubbo-go
中的应用维度注册模型
-"><script type=application/javascript>var
doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new
Date,ga("create","G-NM6FFMT51J","auto"),ga("send","pageview"))</script><script
async src=https://www.google-analytics.com/analytics.js></script>
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go%E5%BA%94%E7%94%A8%E7%BB%B4%E5%BA%A6%E6%B3%A8%E5%86%8C%E6%A8%A1%E5%9E%8B/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
ch [...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo-go 中的应用维度注册模型
-"><meta property="og:description" content="Dubbo-go 中的应用维度注册模型
-"><meta name=twitter:description content="Dubbo-go 中的应用维度注册模型
-"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go%E5%BA%94%E7%94%A8%E7%BB%B4%E5%BA%A6%E6%B3%A8%E5%86%8C%E6%A8%A1%E5%9E%8B/"><meta
property="og:title" content="Dubbo-go应用维度注册模型"><meta name=twitter:title
content="Dubbo-go应用维度注册模型"><meta name=twitter:image:alt content="Apache
Dubbo"><meta property="og:image"
content="/imgs/blog/dubbo-go/app-registry/app-registry-model.png"><meta
property="og:type" content="article"><meta name=viewport content="wid [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo-go
中的应用维度注册模型"><meta property="og:description" content="Dubbo-go 中的应用维度注册模型"><meta
name=twitter:description content="Dubbo-go 中的应用维度注册模型"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go%E5%BA%94%E7%94%A8%E7%BB%B4%E5%BA%A6%E6%B3%A8%E5%86%8C%E6%A8%A
[...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_nav [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
</span></span><span style=display:flex><span> {<span
style=color:#268bd2>"name"</span>:<span
style=color:#2aa198>"instance1"</span>, <span
style=color:#268bd2>"ip"</span>:<span
style=color:#2aa198>"127.0.0.1"</span>, <span
style=color:#268bd2>"metadata"</span>:{<span
style=color:#268bd2>"timeout"</span>:<span
style=color:#2aa198>1000</span>}},
diff --git
"a/zh-cn/blog/2021/01/15/dubbo-go\346\272\220\347\240\201\347\254\224\350\256\260\344\272\214\345\256\242\346\210\267\347\253\257\350\260\203\347\224\250\350\277\207\347\250\213/index.html"
"b/zh-cn/blog/2021/01/15/dubbo-go\346\272\220\347\240\201\347\254\224\350\256\260\344\272\214\345\256\242\346\210\267\347\253\257\350\260\203\347\224\250\350\277\207\347\250\213/index.html"
index 3a0e9f06ad..e5c850bbc5 100644
---
"a/zh-cn/blog/2021/01/15/dubbo-go\346\272\220\347\240\201\347\254\224\350\256\260\344\272\214\345\256\242\346\210\267\347\253\257\350\260\203\347\224\250\350\277\207\347\250\213/index.html"
+++
"b/zh-cn/blog/2021/01/15/dubbo-go\346\272\220\347\240\201\347\254\224\350\256\260\344\272\214\345\256\242\346\210\267\347\253\257\350\260\203\347\224\250\350\277\207\347\250\213/index.html"
@@ -1,14 +1,8 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.in
[...]
-"><meta property="og:type" content="article"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/"><meta
property="article:section" content="blog"><meta
property="article:published_time" content="2021-01-15T00:00:00+00:00"><meta
property="article:modified_time" content="2023-02-23T11:00:42+08:00"><meta
property="og:site_name" content="Apache [...]
-"><meta itemprop=datePublished content="2021-01-15T00:00:00+00:00"><meta
itemprop=dateModified content="2023-02-23T11:00:42+08:00"><meta
itemprop=wordCount content="1189"><meta itemprop=keywords
content="Go,源码解析,"><meta name=twitter:card content="summary"><meta
name=twitter:title content="dubbo-go源码笔记(二)客户端调用过程"><meta
name=twitter:description content="随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架
go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行
server 端源码导读,希望能 [...]
-"><script type=application/javascript>var
doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new
Date,ga("create","G-NM6FFMT51J","auto"),ga("send","pageview"))</script><script
async src=https://www.google-analytics.com/analytics.js></script>
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.in
[...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="随着微服务架构的流行,许多高性能
rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go
框架的基本使用方法,以及从 export 调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。
-"><meta property="og:description" content="随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的
dubbo 框架 go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export
调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。
-"><meta name=twitter:description content="随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的
dubbo 框架 go 语言版本的 dubbo-go 也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export
调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。
-"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/"><meta
property="og:title" content="dubbo-go源码笔记(二)客户端调用过程"><meta name=twitter:title
content="dubbo-go源码笔记(二)客户端调用过程"><meta name=twitter:image:alt content="Apache
Dubbo"><meta property="og:image"
content="/imgs/blog/dubbo-go/code2/p1.png"><meta property="og:type"
content="article"><meta n [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="本文将介绍 dubbo-go
框架的基本使用方法,以及从 export 调用链的角度进行 server 端源码导读,希望能引导读者进一步认识这款框架。"><meta
property="og:description" content="本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行
server 端源码导读,希望能引导读者进一步认识这款框架。"><meta name=twitter:description content="本文将介绍
dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server 端源码导读,希望能引 [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_nav [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
</span></span><span style=display:flex><span> <span
style=color:#2aa198>"demoZk"</span>:
</span></span><span style=display:flex><span> <span
style=color:#268bd2>protocol</span>: <span
style=color:#2aa198>"zookeeper"</span>
</span></span><span style=display:flex><span> <span
style=color:#268bd2>timeout </span>: <span
style=color:#2aa198>"3s"</span>
diff --git
"a/zh-cn/blog/2021/01/15/dubbogo-3.0\347\211\265\346\211\213-grpc-\350\265\260\345\220\221\344\272\221\345\216\237\347\224\237\346\227\266\344\273\243/index.html"
"b/zh-cn/blog/2021/01/15/dubbogo-3.0\347\211\265\346\211\213-grpc-\350\265\260\345\220\221\344\272\221\345\216\237\347\224\237\346\227\266\344\273\243/index.html"
index 5c145e97f6..7db1e2a95d 100644
---
"a/zh-cn/blog/2021/01/15/dubbogo-3.0\347\211\265\346\211\213-grpc-\350\265\260\345\220\221\344\272\221\345\216\237\347\224\237\346\227\266\344\273\243/index.html"
+++
"b/zh-cn/blog/2021/01/15/dubbogo-3.0\347\211\265\346\211\213-grpc-\350\265\260\345\220\221\344\272\221\345\216\237\347\224\237\346\227\266\344\273\243/index.html"
@@ -1,12 +1,6 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})(
[...]
-"><meta property="og:type" content="article"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/"><meta
property="article:section" content="blog"><meta
property="article:published_time" content="2021-01-15T00:00:00+00:00"><meta
property="article:modified_time" content="2023-02-23T11:00:42+08:00"><meta
property="og:site_name" content="Apache Dubbo"><meta itemp [...]
-"><meta itemprop=datePublished content="2021-01-15T00:00:00+00:00"><meta
itemprop=dateModified content="2023-02-23T11:00:42+08:00"><meta
itemprop=wordCount content="499"><meta itemprop=keywords content="Go,"><meta
name=twitter:card content="summary"><meta name=twitter:title content="dubbogo
3.0:牵手 gRPC 走向云原生时代"><meta name=twitter:description content="本文介绍了 dubbo-go 3.0
对云原生的支持和规划
-"><script type=application/javascript>var
doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new
Date,ga("create","G-NM6FFMT51J","auto"),ga("send","pageview"))</script><script
async src=https://www.google-analytics.com/analytics.js></script>
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})(
[...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="本文介绍了 dubbo-go 3.0
对云原生的支持和规划
-"><meta property="og:description" content="本文介绍了 dubbo-go 3.0 对云原生的支持和规划
-"><meta name=twitter:description content="本文介绍了 dubbo-go 3.0 对云原生的支持和规划
-"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/"><meta
property="og:title" content="dubbogo 3.0:牵手 gRPC 走向云原生时代"><meta
name=twitter:title content="dubbogo 3.0:牵手 gRPC 走向云原生时代"><meta
name=twitter:image:alt content="Apache Dubbo"><meta property="og:image"
content="/imgs/blog/dubbo-go/3.0-plan/p1.webp"><meta property="og:type"
content="article"><meta name= [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="本文介绍了 dubbo-go 3.0
对云原生的支持和规划"><meta property="og:description" content="本文介绍了 dubbo-go 3.0
对云原生的支持和规划"><meta name=twitter:description content="本文介绍了 dubbo-go 3.0
对云原生的支持和规划"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B
[...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_nav [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n;</li><li>server 收到并检查是否正确;</li><li>client 和
server 互相发送 setting 帧,收到后发送 ACK 确认;</li><li>client 发送 Header 帧,包含 gRPC 协议字段,以
End Headers 作为 Header 结束标志;</li><li>client 紧接着发送 Data 帧,包含 RPC 调用的 request 信息,以
End Stream 作为 Data 结束标志;</li><li>server 调用函数获得结果;</li><li>server 发送 Header 帧,包含
gRPC 协议字段,以 End Headers 作为 Header 结束标志;</li><li>server 紧接着发送 Data 帧,包含 RPC
调用回传的 response 信息;</li><li>server 紧接着再次发送 Header 帧,包含 RPC 状态和 message 信息,以 End
Stream 作为本次 RPC 调用结束标志。 [...]
diff --git
"a/zh-cn/blog/2022/08/01/01-\344\273\216\344\270\200\344\270\252\346\234\215\345\212\241\346\217\220\344\276\233\350\200\205\347\232\204demo\350\257\264\350\265\267/index.html"
"b/zh-cn/blog/2022/08/01/01-\344\273\216\344\270\200\344\270\252\346\234\215\345\212\241\346\217\220\344\276\233\350\200\205\347\232\204demo\350\257\264\350\265\267/index.html"
index fa53389c4a..7adb50f4f3 100644
---
"a/zh-cn/blog/2022/08/01/01-\344\273\216\344\270\200\344\270\252\346\234\215\345\212\241\346\217\220\344\276\233\350\200\205\347\232\204demo\350\257\264\350\265\267/index.html"
+++
"b/zh-cn/blog/2022/08/01/01-\344\273\216\344\270\200\344\270\252\346\234\215\345\212\241\346\217\220\344\276\233\350\200\205\347\232\204demo\350\257\264\350\265\267/index.html"
@@ -1,14 +1,8 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2022/08/01/01-%E4%BB%8E%E4%B8%80%E4%B8%AA%E6%9C%8D%E5%8A%A1%E6%8F%90%E4%BE%9B%E8%80%85%E7%9A%84demo%E8%AF%B4%E8%B5%B7/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore
[...]
-"><meta property="og:type" content="article"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/01/01-%E4%BB%8E%E4%B8%80%E4%B8%AA%E6%9C%8D%E5%8A%A1%E6%8F%90%E4%BE%9B%E8%80%85%E7%9A%84demo%E8%AF%B4%E8%B5%B7/"><meta
property="article:section" content="blog"><meta
property="article:published_time" content="2022-08-01T00:00:00+00:00"><meta
property="article:modified_time" content="2023-02-22T15:03:22+08:00"><meta
property="og:site_name" content="Apache Dubbo"><me [...]
-"><meta itemprop=datePublished content="2022-08-01T00:00:00+00:00"><meta
itemprop=dateModified content="2023-02-22T15:03:22+08:00"><meta
itemprop=wordCount content="198"><meta itemprop=keywords
content="源码解析,Java,"><meta name=twitter:card content="summary"><meta
name=twitter:title content="01 从一个服务提供者的Demo说起"><meta name=twitter:description
content="为了更方便了解Dubbo提供者原理,我们先来编写一个Demo,从例子中来看源码实现
-"><script type=application/javascript>var
doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new
Date,ga("create","G-NM6FFMT51J","auto"),ga("send","pageview"))</script><script
async src=https://www.google-analytics.com/analytics.js></script>
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2022/08/01/01-%E4%BB%8E%E4%B8%80%E4%B8%AA%E6%9C%8D%E5%8A%A1%E6%8F%90%E4%BE%9B%E8%80%85%E7%9A%84demo%E8%AF%B4%E8%B5%B7/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore
[...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description
content="为了更方便了解Dubbo提供者原理,我们先来编写一个Demo,从例子中来看源码实现
-"><meta property="og:description"
content="为了更方便了解Dubbo提供者原理,我们先来编写一个Demo,从例子中来看源码实现
-"><meta name=twitter:description
content="为了更方便了解Dubbo提供者原理,我们先来编写一个Demo,从例子中来看源码实现
-"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/01/01-%E4%BB%8E%E4%B8%80%E4%B8%AA%E6%9C%8D%E5%8A%A1%E6%8F%90%E4%BE%9B%E8%80%85%E7%9A%84demo%E8%AF%B4%E8%B5%B7/"><meta
property="og:title" content="01 从一个服务提供者的Demo说起"><meta name=twitter:title
content="01 从一个服务提供者的Demo说起"><meta name=twitter:image:alt content="Apache
Dubbo"><meta property="og:image"
content="/imgs/blog/source-blog/1-zookeeper.png"><meta property="og:type"
content="article"><meta name=viewport [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo
源码解析之从一个服务提供者的Demo说起"><meta property="og:description" content="Dubbo
源码解析之从一个服务提供者的Demo说起"><meta name=twitter:description content="Dubbo
源码解析之从一个服务提供者的Demo说起"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/01/01-%E4%BB%8E%E4%B8%80%E4%B8%AA%E6%9C%8D%E5%8A%A1%
[...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_nav [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
<time datetime=2022-08-01 class=text-muted>Monday, August 01,
2022</time></div><header class=article-meta><div class="taxonomy
taxonomy-terms-article taxo-tags"><h5 class=taxonomy-title>Tags:</h5><ul
class=taxonomy-terms><li><a class=taxonomy-term
href=https://cn.dubbo.apache.org/zh-cn/tags/%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/
data-taxonomy-term=%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90><span
class=taxonomy-label>源码解析</span></a></li><li><a class=taxonomy-term
href=https://cn.dubbo.apache.org [...]
<img src=/imgs/blog/source-blog/1-zookeeper.png alt=在这里插入图片描述></p><h2
id=12-服务提供者>1.2 服务提供者</h2><p>接下来给大家贴一下示例源码,这个源码来源于Dubbo源码目录的
dubbo-demo/dubbo-demo-api 目录下面的dubbo-demo-api-provider子项目,这里我做了删减,方便看核心代码:
首先我们定义一个服务接口如下所示:</p><div class=highlight><pre tabindex=0
style=color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code
class=language-java data-lang=java><span style=display:flex><span><span
style=color:#719e07>import</span> java.util.concurrent.CompletableFuture<span
style=color:#719e07>;</span>
diff --git
"a/zh-cn/blog/2022/08/02/02-\345\220\257\345\212\250\346\234\215\345\212\241\345\211\215\346\234\215\345\212\241\351\205\215\347\275\256serviceconfig\347\261\273\345\236\213\346\230\257\345\246\202\344\275\225\345\210\235\345\247\213\345\214\226\347\232\204/index.html"
"b/zh-cn/blog/2022/08/02/02-\345\220\257\345\212\250\346\234\215\345\212\241\345\211\215\346\234\215\345\212\241\351\205\215\347\275\256serviceconfig\347\261\273\345\236\213\346\230\257\345\246\202\344\275\225\34
[...]
index fd16fe5b92..8ea37d2705 100644
---
"a/zh-cn/blog/2022/08/02/02-\345\220\257\345\212\250\346\234\215\345\212\241\345\211\215\346\234\215\345\212\241\351\205\215\347\275\256serviceconfig\347\261\273\345\236\213\346\230\257\345\246\202\344\275\225\345\210\235\345\247\213\345\214\226\347\232\204/index.html"
+++
"b/zh-cn/blog/2022/08/02/02-\345\220\257\345\212\250\346\234\215\345\212\241\345\211\215\346\234\215\345\212\241\351\205\215\347\275\256serviceconfig\347\261\273\345\236\213\346\230\257\345\246\202\344\275\225\345\210\235\345\247\213\345\214\226\347\232\204/index.html"
@@ -1,14 +1,8 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2022/08/02/02-%E5%90%AF%E5%8A%A8%E6%9C%8D%E5%8A%A1%E5%89%8D%E6%9C%8D%E5%8A%A1%E9%85%8D%E7%BD%AEserviceconfig%E7%B1%BB%E5%9E%8B%E6%98%AF%E5%A6%82%E4%BD%95%E5%88%9D%E5%A7%8B%E5%8C%96%E7%9A%84/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9
[...]
-"><meta property="og:type" content="article"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/02/02-%E5%90%AF%E5%8A%A8%E6%9C%8D%E5%8A%A1%E5%89%8D%E6%9C%8D%E5%8A%A1%E9%85%8D%E7%BD%AEserviceconfig%E7%B1%BB%E5%9E%8B%E6%98%AF%E5%A6%82%E4%BD%95%E5%88%9D%E5%A7%8B%E5%8C%96%E7%9A%84/"><meta
property="article:section" content="blog"><meta
property="article:published_time" content="2022-08-02T00:00:00+00:00"><meta
property="article:modified_time" content="2023-02-22T [...]
-"><meta itemprop=datePublished content="2022-08-02T00:00:00+00:00"><meta
itemprop=dateModified content="2023-02-22T15:03:22+08:00"><meta
itemprop=wordCount content="658"><meta itemprop=keywords
content="源码解析,Java,"><meta name=twitter:card content="summary"><meta
name=twitter:title content="02-启动服务前服务配置ServiceConfig类型是如何初始化的?"><meta
name=twitter:description content="[Dubbo 3.0.8源码解析]
了解一下服务配置的设计原理,有助于理解后面的服务治理的原理
-"><script type=application/javascript>var
doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new
Date,ga("create","G-NM6FFMT51J","auto"),ga("send","pageview"))</script><script
async src=https://www.google-analytics.com/analytics.js></script>
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2022/08/02/02-%E5%90%AF%E5%8A%A8%E6%9C%8D%E5%8A%A1%E5%89%8D%E6%9C%8D%E5%8A%A1%E9%85%8D%E7%BD%AEserviceconfig%E7%B1%BB%E5%9E%8B%E6%98%AF%E5%A6%82%E4%BD%95%E5%88%9D%E5%A7%8B%E5%8C%96%E7%9A%84/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9
[...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="[Dubbo 3.0.8源码解析]
了解一下服务配置的设计原理,有助于理解后面的服务治理的原理
-"><meta property="og:description" content="[Dubbo 3.0.8源码解析]
了解一下服务配置的设计原理,有助于理解后面的服务治理的原理
-"><meta name=twitter:description content="[Dubbo 3.0.8源码解析]
了解一下服务配置的设计原理,有助于理解后面的服务治理的原理
-"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/02/02-%E5%90%AF%E5%8A%A8%E6%9C%8D%E5%8A%A1%E5%89%8D%E6%9C%8D%E5%8A%A1%E9%85%8D%E7%BD%AEserviceconfig%E7%B1%BB%E5%9E%8B%E6%98%AF%E5%A6%82%E4%BD%95%E5%88%9D%E5%A7%8B%E5%8C%96%E7%9A%84/"><meta
property="og:title" content="02-启动服务前服务配置ServiceConfig类型是如何初始化的?"><meta
name=twitter:title content="02-启动服务前服务配置ServiceConfig类型是如何初始化的?"><meta
name=twitter:image:alt content="Apache Dubbo"><meta property="og:image" conte
[...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo 源码解析之
ServiceConfig 类型是如何初始化的?"><meta property="og:description" content="Dubbo 源码解析之
ServiceConfig 类型是如何初始化的?"><meta name=twitter:description content="Dubbo 源码解析之
ServiceConfig 类型是如何初始化的?"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/02/02-%E5%90%AF%E5%8A%
[...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_nav [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
<time datetime=2022-08-02 class=text-muted>Tuesday, August 02,
2022</time></div><header class=article-meta><div class="taxonomy
taxonomy-terms-article taxo-tags"><h5 class=taxonomy-title>Tags:</h5><ul
class=taxonomy-terms><li><a class=taxonomy-term
href=https://cn.dubbo.apache.org/zh-cn/tags/%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/
data-taxonomy-term=%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90><span
class=taxonomy-label>源码解析</span></a></li><li><a class=taxonomy-term
href=https://cn.dubbo.apache.or [...]
</span></span><span style=display:flex><span> <span
style=color:#268bd2>public</span> <span style=color:#268bd2>static</span> <span
style=color:#dc322f>void</span> <span style=color:#268bd2>main</span><span
style=color:#719e07>(</span>String<span style=color:#719e07>[]</span> args<span
style=color:#719e07>)</span> <span style=color:#268bd2>throws</span> Exception
<span style=color:#719e07>{</span>
</span></span><span style=display:flex><span>
startWithBootstrap<span style=color:#719e07>();</span>
diff --git
"a/zh-cn/blog/2022/08/03/03-\346\241\206\346\236\266\345\272\224\347\224\250\347\250\213\345\272\217\346\250\241\345\235\227\351\242\206\345\237\237\346\250\241\345\236\213model\345\257\271\350\261\241\347\232\204\345\210\235\345\247\213\345\214\226/index.html"
"b/zh-cn/blog/2022/08/03/03-\346\241\206\346\236\266\345\272\224\347\224\250\347\250\213\345\272\217\346\250\241\345\235\227\351\242\206\345\237\237\346\250\241\345\236\213model\345\257\271\350\261\241\347\232\204\345\21
[...]
index 0bbbc73dbb..e41b4a8951 100644
---
"a/zh-cn/blog/2022/08/03/03-\346\241\206\346\236\266\345\272\224\347\224\250\347\250\213\345\272\217\346\250\241\345\235\227\351\242\206\345\237\237\346\250\241\345\236\213model\345\257\271\350\261\241\347\232\204\345\210\235\345\247\213\345\214\226/index.html"
+++
"b/zh-cn/blog/2022/08/03/03-\346\241\206\346\236\266\345\272\224\347\224\250\347\250\213\345\272\217\346\250\241\345\235\227\351\242\206\345\237\237\346\250\241\345\236\213model\345\257\271\350\261\241\347\232\204\345\210\235\345\247\213\345\214\226/index.html"
@@ -1,14 +1,8 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2022/08/03/03-%E6%A1%86%E6%9E%B6%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%A8%A1%E5%9D%97%E9%A2%86%E5%9F%9F%E6%A8%A1%E5%9E%8Bmodel%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%88%9D%E5%A7%8B%E5%8C%96/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=docu
[...]
-"><meta property="og:type" content="article"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/03/03-%E6%A1%86%E6%9E%B6%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%A8%A1%E5%9D%97%E9%A2%86%E5%9F%9F%E6%A8%A1%E5%9E%8Bmodel%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%88%9D%E5%A7%8B%E5%8C%96/"><meta
property="article:section" content="blog"><meta
property="article:published_time" content="2022-08-03T00:00:00+00:00"><meta
property="article:modified_time" content="2022-08-03T00:00:00 [...]
-"><meta itemprop=datePublished content="2022-08-03T00:00:00+00:00"><meta
itemprop=dateModified content="2022-08-03T00:00:00+00:00"><meta
itemprop=wordCount content="1855"><meta itemprop=keywords
content="源码解析,Java,"><meta name=twitter:card content="summary"><meta
name=twitter:title content="03-框架,应用程序,模块领域模型Model对象的初始化"><meta
name=twitter:description content="[Dubbo 3.0.8源码解析]
分层设计,框架,应用程序,模块领域模型Model对象的初始化了解下应用,模块的模型为后面的有效了解配置,启动的逻辑做铺垫
-"><script type=application/javascript>var
doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new
Date,ga("create","G-NM6FFMT51J","auto"),ga("send","pageview"))</script><script
async src=https://www.google-analytics.com/analytics.js></script>
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/2022/08/03/03-%E6%A1%86%E6%9E%B6%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%A8%A1%E5%9D%97%E9%A2%86%E5%9F%9F%E6%A8%A1%E5%9E%8Bmodel%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%88%9D%E5%A7%8B%E5%8C%96/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=docu
[...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="[Dubbo 3.0.8源码解析]
分层设计,框架,应用程序,模块领域模型Model对象的初始化了解下应用,模块的模型为后面的有效了解配置,启动的逻辑做铺垫
-"><meta property="og:description" content="[Dubbo 3.0.8源码解析]
分层设计,框架,应用程序,模块领域模型Model对象的初始化了解下应用,模块的模型为后面的有效了解配置,启动的逻辑做铺垫
-"><meta name=twitter:description content="[Dubbo 3.0.8源码解析]
分层设计,框架,应用程序,模块领域模型Model对象的初始化了解下应用,模块的模型为后面的有效了解配置,启动的逻辑做铺垫
-"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/03/03-%E6%A1%86%E6%9E%B6%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%A8%A1%E5%9D%97%E9%A2%86%E5%9F%9F%E6%A8%A1%E5%9E%8Bmodel%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%88%9D%E5%A7%8B%E5%8C%96/"><meta
property="og:title" content="03-框架,应用程序,模块领域模型Model对象的初始化"><meta
name=twitter:title content="03-框架,应用程序,模块领域模型Model对象的初始化"><meta
name=twitter:image:alt content="Apache Dubbo"><meta property="og:image"
content="/imgs/blog/source- [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo
源码解析之框架,应用程序,模块领域模型 Model 对象的初始化"><meta property="og:description"
content="Dubbo 源码解析之框架,应用程序,模块领域模型 Model 对象的初始化"><meta name=twitter:description
content="Dubbo 源码解析之框架,应用程序,模块领域模型 Model 对象的初始化"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/2022/08/03/03-%E6%A1%86% [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body class="td-page
td-documentation"><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_nav [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
<time datetime=2022-08-03 class=text-muted>Wednesday, August 03,
2022</time></div><header class=article-meta><div class="taxonomy
taxonomy-terms-article taxo-tags"><h5 class=taxonomy-title>Tags:</h5><ul
class=taxonomy-terms><li><a class=taxonomy-term
href=https://cn.dubbo.apache.org/zh-cn/tags/%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/
data-taxonomy-term=%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90><span
class=taxonomy-label>源码解析</span></a></li><li><a class=taxonomy-term
href=https://cn.dubbo.apache. [...]
</span></span><span style=display:flex><span> <span
style=color:#268bd2>super</span><span
style=color:#719e07>(</span>ApplicationModel<span
style=color:#719e07>.</span>defaultModel<span
style=color:#719e07>().</span>getDefaultModule<span
style=color:#719e07>());</span>
</span></span><span style=display:flex><span> <span
style=color:#719e07>}</span>
diff --git a/zh-cn/blog/golang/index.html b/zh-cn/blog/golang/index.html
index f4021e9e98..7311736b1e 100644
--- a/zh-cn/blog/golang/index.html
+++ b/zh-cn/blog/golang/index.html
@@ -1,14 +1,14 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/golang/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/golang/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to [...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/golang/"><meta
property="og:title" content="Golang"><meta name=twitter:title
content="Golang"><meta name=twitter:image:alt content="Apache Dubbo">< [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo Blog for
Golang"><meta property="og:description" content="Dubbo Blog for Golang"><meta
name=twitter:description content="Dubbo Blog for Golang"><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/golang/"><meta
property="og:title" content="Golang"><meta name=twitter:titl [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class="td-section td-documentation"><header><nav class="js-navbar-scroll navbar
navbar-expand navbar-dark flex-column flex-md-row td-navbar"
data-auto-burger=primary><a class=navbar-brand href=/zh-cn/><span
class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache
Dubbo</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_ [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
最近开始参与 dubbogo 的一些开发测试,之前都是直接拿 samples 的例子验证功能,而这次为了复现一个功能问题,打算从零开始搭建一个
dubbo-go 和 dubbo 调用的工程,踩到了一些新人使用 dubbogo 的坑,把这个过程记录下供大家参考。
通过本文你可以了解到:
如何常规配置 dubbogo 消费方去调用 dubbo 和 dubbogo 服务提供方 通过一个实际的 BUG 介绍解决问题的思路 二、解决问题 2.1
…</p><p class=pt-0><a
href=/zh-cn/blog/2021/02/20/dubbo-go-%E7%99%BD%E8%AF%9D%E6%96%87/
aria-label="更多 - dubbo-go 白话文">更多</a></p></div></li><li class="media mb-4"><div
class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1%E6%A1%86%E6%9E%B6-seata-golang-%E9%80%9A%E4%BF%A1%E6%A8%A1%E5%9E%8B%E8%AF%A6%E8%A7%A3/>分布式事务框架
seata-golang 通信模型详解</a></h5><p class [...]
18 年的时候, …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1%E6%A1%86%E6%9E%B6-seata-golang-%E9%80%9A%E4%BF%A1%E6%A8%A1%E5%9E%8B%E8%AF%A6%E8%A7%A3/
aria-label="更多 - 分布式事务框架 seata-golang 通信模型详解">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/>dubbogo
3.0:牵手 gRPC 走向云原生时代</a></h5 [...]
-不过这世界变化快,自从以 docker 为代表的的容器技术和以 K8s
为代表的容器编排技术登上舞台之后,云原生时代到来了。在云原生时代,不可变的基础设施给原有的中间件带来了不可变的中间件基础设施:gRPC
统一了底层通信层;protobuf …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/
aria-label="更多 - dubbogo 3.0:牵手 gRPC 走向云原生时代">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E
[...]
-1. 配置文件和客户端源码 1.1 client配置文件 helloworld提供 …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/
aria-label="更多 - dubbo-go源码笔记(二)客户端调用过程">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/%E6%B6%82%E9%B8%A6%E6%99%BA%E8%83%BD-dubbo-go-%E4%BA%BF%E7%BA%A7%E6%B5%81%E9%87%8F%E7%9A%84%E5%AE%9E%E8%B7%B5%E4%B8%8E%E6%
[...]
+不过这世界变化快,自从以 docker 为代表的的容器技术和以 K8s
为代表的容器编排技术登上舞台之后,云原生时代到来了。在云原生时代,不可变的基础设施给原有的中间件带来了不可变的中间件基础设施:gRPC
统一了底层通信层;protobuf …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/
aria-label="更多 - dubbogo 3.0:牵手 gRPC 走向云原生时代">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E
[...]
+前言 有了上一篇文章《dubbo-go 源码笔记(一)Server服务暴露过程详解》
的铺垫,可以大致上类比客户端服务类似于服务端启动过程。其中最大的区别是服务端通过zk注册服务,发布自己 …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/
aria-label="更多 - dubbo-go源码笔记(二)客户端调用过程">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/%E6%B6%82%E9%B8%A6%E6%99%BA%E8%83%BD-dubbo-go-%E4%BA%BF%E7%BA%A7%E6%B
[...]
另外,文中的测试代码基于 dubbo-go版本 v1.4.0。
dubbo-go …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/%E6%B6%82%E9%B8%A6%E6%99%BA%E8%83%BD-dubbo-go-%E4%BA%BF%E7%BA%A7%E6%B5%81%E9%87%8F%E7%9A%84%E5%AE%9E%E8%B7%B5%E4%B8%8E%E6%8E%A2%E7%B4%A2/
aria-label="更多 - 涂鸦智能 dubbo-go 亿级流量的实践与探索">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8B-dubbo-go/>快速上手
dubbo-go</a></h5><p class="mb-2 mb-md-3"><small class=text-muted>Thursday,
Januar [...]
最近需要调研使用 dubbo,之前完全是 0 基础,对于 dubbo 只存在于听说,今天上手实战一把,告诉你如何快速用 go 上手 dubbo
diff --git a/zh-cn/blog/golang/index.xml b/zh-cn/blog/golang/index.xml
index b8556bff61..97736ccfe7 100644
--- a/zh-cn/blog/golang/index.xml
+++ b/zh-cn/blog/golang/index.xml
@@ -534,6 +534,7 @@
</ul>
<hr>
<p>篇幅有限,就介绍到这里。欢迎有兴趣的同学来参与 <a
href="https://github.com/apache/dubbo-go/tree/3.0">dubbogo3.0</a>
的建设,感谢阅读。</p></description></item><item><title>Blog:
dubbo-go源码笔记(二)客户端调用过程</title><link>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/</link><pubDate>Fri,
15 Jan 2021 00:00:00
+0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%
[...]
+<p>随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go
也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server
端源码导读,希望能引导读者进一步认识这款框架。</p>
<h2 id="前言">前言</h2>
<p>有了上一篇文章<a
href="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/"
title="">《dubbo-go 源码笔记(一)Server服务暴露过程详解》</a>
的铺垫,可以大致上类比客户端服务类似于服务端启动过程。其中最大的区别是服务端通过zk注册服务,发布自己的ivkURL并订阅事件开启监听;而服务端应该是通过zk注册组件,<strong>拿到需要调用的serviceURL</strong>,<strong>更新invoker</strong>并<strong>重写用户的RPCService</strong>,从而实现对远程过程调用细节的封装。</p>
<h2 id="1-配置文件和客户端源码">1. 配置文件和客户端源码</h2>
@@ -1698,6 +1699,7 @@ PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n;</li>
<blockquote>
<p>作者信息: 郑泽超,Apache Dubbo/Dubbo-Go committer,GithubID:
CodingSinger,目前就职于上海爱奇艺科技有限公司,Java/Golang 开发工程师。</p>
</blockquote></description></item><item><title>Blog: Dubbo-go 源码笔记(一)Server
端开启服务过程</title><link>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/</link><pubDate>Thu,
14 Jan 2021 00:00:00
+0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%
[...]
+<p>随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go
也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server
端源码导读,希望能引导读者进一步认识这款框架。</p>
<p>当拿到一款框架之后,一种不错的源码阅读方式大致如下:从运行最基础的 helloworld demo 源码开始 —&gt; 再查看配置文件
—&gt; 开启各种依赖服务(比如zk、consul) —&gt; 开启服务端 —&gt; 再到通过 client 调用服务端
—&gt; 打印完整请求日志和回包。调用成功之后,再根据框架的设计模型,从配置文件解析开始,自顶向下递阅读整个框架的调用栈。</p>
<p>对于 C/S 模式的 rpc 请求来说,整个调用栈被拆成了 client 和 server 两部分,所以可以分别从 server
端的配置文件解析阅读到 server 端的监听启动,从 client 端的配置文件解析阅读到一次 invoker Call
调用。这样一次完整请求就明晰了起来。</p>
<h2 id="运行官网提供的-helloworld-demo">运行官网提供的 helloworld-demo</h2>
diff --git a/zh-cn/blog/golang/page/2/index.html
b/zh-cn/blog/golang/page/2/index.html
index e557705287..660e0b2410 100644
--- a/zh-cn/blog/golang/page/2/index.html
+++ b/zh-cn/blog/golang/page/2/index.html
@@ -1,13 +1,13 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/golang/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/golang/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to [...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/golang/"><meta
property="og:title" content="Golang"><meta name=twitter:title
content="Golang"><meta name=twitter:image:alt content="Apache Dubbo">< [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo Blog for
Golang"><meta property="og:description" content="Dubbo Blog for Golang"><meta
name=twitter:description content="Dubbo Blog for Golang"><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/golang/"><meta
property="og:title" content="Golang"><meta name=twitter:titl [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class="td-section td-documentation"><header><nav class="js-navbar-scroll navbar
navbar-expand navbar-dark flex-column flex-md-row td-navbar"
data-auto-burger=primary><a class=navbar-brand href=/zh-cn/><span
class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache
Dubbo</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_ [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
到⽬前为⽌该⽅案的实现已经被合并到 dubbo-go 的 master 分⽀。具体实现为关于 Kubernetes 的 PullRequest 。
Kubernetes管理资源的哲学 Kubernetes 作为容器集群化管理⽅案管理资源的维度可主观的分为服务进程管理和服务接⼊管理。
服务实例管理,主要体现⽅式为 Pod 设计模式加控制器模式,控制器保证具有特定标签 ( …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD%E5%B0%86-kubernets-%E5%8E%9F%E4%BD%9C%E4%B8%BA%E6%B3%A8%E5%86%8C%E4%B8%AD%E7%9A%84%E8%AE%BE%E8%AE%A1%E5%92%8C%E5%AE%9E%E7%8E%B0/
aria-label="更多 - dubbo-go 中将 Kubernets
原⽣作为注册中⼼的设计和实现">更多</a></p></div></li><li class="media mb-4"><div
class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD-rest-%E5%8D%8F%E8%AE%AE%E5%AE%9E%E7%8E%B0/>dubbo-go
中 RES [...]
-在 dubbo-go 中的 REST 协议指的是一种基于 HTTP 协议的远程调用方式。简单的来讲,REST 协议就是把dubbo 服务发布成
RESTful …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD-rest-%E5%8D%8F%E8%AE%AE%E5%AE%9E%E7%8E%B0/
aria-label="更多 - dubbo-go 中 REST 协议实现">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/>Dubbo-go
源码笔记(一) [...]
-对于 C/S 模式的 rpc 请求来说,整个调用栈被拆成了 client 和 server 两部分,所以可以 …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/
aria-label="更多 - Dubbo-go 源码笔记(一)Server 端开启服务过程">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E5%8F%AF%E4%BF%A1%E8%B0%83%E7%94%A8%E5%AE%9E%E7%8E%B0/>dubbo-go
可信调用实现</a></h5><p c [...]
+在 dubbo-go 中的 REST 协议指的是一种基于 HTTP 协议的远程调用方式。简单的来讲,REST 协议就是把dubbo 服务发布成
RESTful …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD-rest-%E5%8D%8F%E8%AE%AE%E5%AE%9E%E7%8E%B0/
aria-label="更多 - dubbo-go 中 REST 协议实现">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/>Dubbo-go
源码笔记(一) [...]
+当拿到一款框架之后,一种不错的源码阅读方式大致如下:从运行最基础的 helloworld demo 源码开始 —> 再查看配置文件 —>
开启各种依赖服务(比如zk、consul) …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/
aria-label="更多 - Dubbo-go 源码笔记(一)Server 端开启服务过程">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E5%8F%AF%E4%BF%A1%E8%B0%83%E7%94%A8%E5%AE%9E%E7
[...]
本文将讲解如何在 Dubbo/Dubbo-Go 中实现灵活,安全和高效的身份验证和授权方案。
可信的目的 为什么需要鉴权认证?实际生产中类似支付之类的安全性敏感的业务 …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E5%8F%AF%E4%BF%A1%E8%B0%83%E7%94%A8%E5%AE%9E%E7%8E%B0/
aria-label="更多 - dubbo-go 可信调用实现">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/12/%E8%AE%B0%E4%B8%80%E6%AC%A1%E5%AF%B9-dubbo-go-hessian2-%E7%9A%84%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/>记一次对
dubbo-go-hessian2 的性能优化</a></h5><p class="mb-2 mb-md-3"><small
class=text-muted> [...]
立项 譬如有网文 基于Go的马蜂窝旅游网分布式IM系统技术实践 把 dubbo-go 与其他 RPC 框架对比如下:
diff --git a/zh-cn/blog/golang/page/3/index.html
b/zh-cn/blog/golang/page/3/index.html
index d240c36075..bafe69a269 100644
--- a/zh-cn/blog/golang/page/3/index.html
+++ b/zh-cn/blog/golang/page/3/index.html
@@ -1,6 +1,6 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/golang/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/golang/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to [...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/golang/"><meta
property="og:title" content="Golang"><meta name=twitter:title
content="Golang"><meta name=twitter:image:alt content="Apache Dubbo">< [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo Blog for
Golang"><meta property="og:description" content="Dubbo Blog for Golang"><meta
name=twitter:description content="Dubbo Blog for Golang"><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/golang/"><meta
property="og:title" content="Golang"><meta name=twitter:titl [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class="td-section td-documentation"><header><nav class="js-navbar-scroll navbar
navbar-expand navbar-dark flex-column flex-md-row td-navbar"
data-auto-burger=primary><a class=navbar-brand href=/zh-cn/><span
class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache
Dubbo</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_ [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
而dubbogo则是dubbo的go语言实现。
diff --git a/zh-cn/blog/integration/index.html
b/zh-cn/blog/integration/index.html
index 1b1474f78a..494b6482d1 100644
--- a/zh-cn/blog/integration/index.html
+++ b/zh-cn/blog/integration/index.html
@@ -1,6 +1,6 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/integration/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shri [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/integration/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shri [...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/integration/"><meta
property="og:title" content="生态集成"><meta name=twitter:title
content="生态集成"><meta name=twitter:image:alt content="Apache Dubbo"> [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo
生态集成相关博客"><meta property="og:description" content="Dubbo 生态集成相关博客"><meta
name=twitter:description content="Dubbo 生态集成相关博客"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/integration/"><meta
property="og:title" content="生态集成"><meta name=twitter:title content="生态集成"><
[...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class="td-section td-documentation"><header><nav class="js-navbar-scroll navbar
navbar-expand navbar-dark flex-column flex-md-row td-navbar"
data-auto-burger=primary><a class=navbar-brand href=/zh-cn/><span
class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache
Dubbo</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_ [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
2021年5月,ShenYu捐献给 Apache 软件基金会,Apache 基金会全票通过,顺利进入孵化器。
diff --git a/zh-cn/blog/integration/page/2/index.html
b/zh-cn/blog/integration/page/2/index.html
index 53126179b0..3d20b30fe8 100644
--- a/zh-cn/blog/integration/page/2/index.html
+++ b/zh-cn/blog/integration/page/2/index.html
@@ -1,6 +1,6 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/integration/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shri [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/integration/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shri [...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/integration/"><meta
property="og:title" content="生态集成"><meta name=twitter:title
content="生态集成"><meta name=twitter:image:alt content="Apache Dubbo"> [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo
生态集成相关博客"><meta property="og:description" content="Dubbo 生态集成相关博客"><meta
name=twitter:description content="Dubbo 生态集成相关博客"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/integration/"><meta
property="og:title" content="生态集成"><meta name=twitter:title content="生态集成"><
[...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class="td-section td-documentation"><header><nav class="js-navbar-scroll navbar
navbar-expand navbar-dark flex-column flex-md-row td-navbar"
data-auto-burger=primary><a class=navbar-brand href=/zh-cn/><span
class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache
Dubbo</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_ [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
微服务跨语言调用 微服务架构已成为目前互联网架构的趋势,关于微服务的讨论,几乎占据了各种技术大会的绝大多数版面。国内使用最多的服务治理框架非阿里开源的
dubbo 莫属,千米网也选择了 dubbo 作为微服务治理框架。另一方面,和大多数互联网公司一样,千米的开发 …</p><p class=pt-0><a
href=/zh-cn/blog/2018/08/14/%E4%BB%8E%E8%B7%A8%E8%AF%AD%E8%A8%80%E8%B0%83%E7%94%A8%E5%88%B0dubbo2.js/
aria-label="更多 - 从跨语言调用到dubbo2.js">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2018/08/07/%E5%9C%A8-dubbo-%E5%BA%94%E7%94%A8%E4%B8%AD%E4%BD%BF%E7%94%A8-zookeeper/>在
Dubbo 应 [...]
diff --git a/zh-cn/blog/java/codeanalysis/index.html
b/zh-cn/blog/java/codeanalysis/index.html
index 9b5461827d..db35c0aeeb 100644
--- a/zh-cn/blog/java/codeanalysis/index.html
+++ b/zh-cn/blog/java/codeanalysis/index.html
@@ -1,6 +1,6 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/java/codeanalysis/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport content="width=device-width,initial-scale=
[...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/java/codeanalysis/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport content="width=device-width,initial-scale=
[...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/java/codeanalysis/"><meta
property="og:title" content="源码分析"><meta name=twitter:title
content="源码分析"><meta name=twitter:image:alt content="Apache D [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo Java
源码分析"><meta property="og:description" content="Dubbo Java 源码分析"><meta
name=twitter:description content="Dubbo Java 源码分析"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/java/codeanalysis/"><meta
property="og:title" content="源码分析"><meta name=twitter:title content [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class="td-section td-documentation"><header><nav class="js-navbar-scroll navbar
navbar-expand navbar-dark flex-column flex-md-row td-navbar"
data-auto-burger=primary><a class=navbar-brand href=/zh-cn/><span
class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache
Dubbo</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_ [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
一、流控反压现状 客户端和服务器端在接收数据的时候有一个缓冲区来临时存储数据, 但是缓冲区的大小是有限制的,所以有可能会出现缓冲区溢出的情况, HTTP
通过流控保护数据溢出丢失风险。
diff --git a/zh-cn/blog/java/index.html b/zh-cn/blog/java/index.html
index 94b1078419..2842bd7c00 100644
--- a/zh-cn/blog/java/index.html
+++ b/zh-cn/blog/java/index.html
@@ -1,6 +1,6 @@
-<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/java/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to-f [...]
+<!doctype html><html lang=zh-cn class=no-js><head><meta name=ROBOTS
content="INDEX, FOLLOW"><link rel=canonical
href=https://cn.dubbo.apache.org/zh-cn/blog/java/><script>var
_hmt=_hmt||[];(function(){var
e,t=document.createElement("script");t.src="https://hm.baidu.com/hm.js?3b78f49ba47181e4d998a66b689446e9",e=document.getElementsByTagName("script")[0],e.parentNode.insertBefore(t,e)})()</script><meta
charset=utf-8><meta name=viewport
content="width=device-width,initial-scale=1,shrink-to-f [...]
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
-<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url" content="https://cn.dubbo.apache.org/zh-cn/blog/java/"><meta
property="og:title" content="Java"><meta name=twitter:title
content="Java"><meta name=twitter:image:alt content="Apache Dubbo"><meta p [...]
+<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content="Dubbo Java
相关博客"><meta property="og:description" content="Dubbo Java 相关博客"><meta
name=twitter:description content="Dubbo Java 相关博客"><meta property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/blog/java/"><meta
property="og:title" content="Java"><meta name=twitter:title
content="Java"><meta [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class="td-section td-documentation"><header><nav class="js-navbar-scroll navbar
navbar-expand navbar-dark flex-column flex-md-row td-navbar"
data-auto-burger=primary><a class=navbar-brand href=/zh-cn/><span
class=navbar-logo></span><span class="text-uppercase font-weight-bold">Apache
Dubbo</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_ [...]
<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class="container-fluid td-outer"><div class=td-main><div class="row
flex-md-nowrap"><div class="col-12 col-md-3 col-xl-2 td-sidebar
d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div
id=content-mobile><form class="td-sidebar__search d-flex
align-items-center"><div id=docsearch></div><button class="btn [...]
<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
diff --git a/zh-cn/blog/page/6/index.html b/zh-cn/blog/page/6/index.html
index 9aea714eda..a0aec6c5a4 100644
--- a/zh-cn/blog/page/6/index.html
+++ b/zh-cn/blog/page/6/index.html
@@ -12,8 +12,8 @@ Bug 修复 修复 nacos group 在消费者端不生效的问题 (#8533) 修复
通过本文你可以了解到:
如何常规配置 dubbogo 消费方去调用 dubbo 和 dubbogo 服务提供方 通过一个实际的 BUG 介绍解决问题的思路 二、解决问题 2.1
…</p><p class=pt-0><a
href=/zh-cn/blog/2021/02/20/dubbo-go-%E7%99%BD%E8%AF%9D%E6%96%87/
aria-label="更多 - dubbo-go 白话文">更多</a></p></div></li><li class="media mb-4"><div
class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1%E6%A1%86%E6%9E%B6-seata-golang-%E9%80%9A%E4%BF%A1%E6%A8%A1%E5%9E%8B%E8%AF%A6%E8%A7%A3/>分布式事务框架
seata-golang 通信模型详解</a></h5><p class [...]
18 年的时候, …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1%E6%A1%86%E6%9E%B6-seata-golang-%E9%80%9A%E4%BF%A1%E6%A8%A1%E5%9E%8B%E8%AF%A6%E8%A7%A3/
aria-label="更多 - 分布式事务框架 seata-golang 通信模型详解">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/>dubbogo
3.0:牵手 gRPC 走向云原生时代</a></h5 [...]
-不过这世界变化快,自从以 docker 为代表的的容器技术和以 K8s
为代表的容器编排技术登上舞台之后,云原生时代到来了。在云原生时代,不可变的基础设施给原有的中间件带来了不可变的中间件基础设施:gRPC
统一了底层通信层;protobuf …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/
aria-label="更多 - dubbogo 3.0:牵手 gRPC 走向云原生时代">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E
[...]
-1. 配置文件和客户端源码 1.1 client配置文件 helloworld提供 …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/
aria-label="更多 - dubbo-go源码笔记(二)客户端调用过程">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/%E6%B6%82%E9%B8%A6%E6%99%BA%E8%83%BD-dubbo-go-%E4%BA%BF%E7%BA%A7%E6%B5%81%E9%87%8F%E7%9A%84%E5%AE%9E%E8%B7%B5%E4%B8%8E%E6%
[...]
+不过这世界变化快,自从以 docker 为代表的的容器技术和以 K8s
为代表的容器编排技术登上舞台之后,云原生时代到来了。在云原生时代,不可变的基础设施给原有的中间件带来了不可变的中间件基础设施:gRPC
统一了底层通信层;protobuf …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbogo-3.0%E7%89%B5%E6%89%8B-grpc-%E8%B5%B0%E5%90%91%E4%BA%91%E5%8E%9F%E7%94%9F%E6%97%B6%E4%BB%A3/
aria-label="更多 - dubbogo 3.0:牵手 gRPC 走向云原生时代">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E
[...]
+前言 有了上一篇文章《dubbo-go 源码笔记(一)Server服务暴露过程详解》
的铺垫,可以大致上类比客户端服务类似于服务端启动过程。其中最大的区别是服务端通过zk注册服务,发布自己 …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/
aria-label="更多 - dubbo-go源码笔记(二)客户端调用过程">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/%E6%B6%82%E9%B8%A6%E6%99%BA%E8%83%BD-dubbo-go-%E4%BA%BF%E7%BA%A7%E6%B
[...]
另外,文中的测试代码基于 dubbo-go版本 v1.4.0。
dubbo-go …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/%E6%B6%82%E9%B8%A6%E6%99%BA%E8%83%BD-dubbo-go-%E4%BA%BF%E7%BA%A7%E6%B5%81%E9%87%8F%E7%9A%84%E5%AE%9E%E8%B7%B5%E4%B8%8E%E6%8E%A2%E7%B4%A2/
aria-label="更多 - 涂鸦智能 dubbo-go 亿级流量的实践与探索">更多</a></p></div></li><li
class="media mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8B-dubbo-go/>快速上手
dubbo-go</a></h5><p class="mb-2 mb-md-3"><small class=text-muted>Thursday,
Januar [...]
最近需要调研使用 dubbo,之前完全是 0 基础,对于 dubbo 只存在于听说,今天上手实战一把,告诉你如何快速用 go 上手 dubbo
diff --git a/zh-cn/blog/page/7/index.html b/zh-cn/blog/page/7/index.html
index f257e4a9d9..ce06ec4d36 100644
--- a/zh-cn/blog/page/7/index.html
+++ b/zh-cn/blog/page/7/index.html
@@ -20,8 +20,8 @@ Dubbo-go 作为 Dubbo 的 Go 语言版本,因跨语言之故,二者针对同
到⽬前为⽌该⽅案的实现已经被合并到 dubbo-go 的 master 分⽀。具体实现为关于 Kubernetes 的 PullRequest 。
Kubernetes管理资源的哲学 Kubernetes 作为容器集群化管理⽅案管理资源的维度可主观的分为服务进程管理和服务接⼊管理。
服务实例管理,主要体现⽅式为 Pod 设计模式加控制器模式,控制器保证具有特定标签 ( …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD%E5%B0%86-kubernets-%E5%8E%9F%E4%BD%9C%E4%B8%BA%E6%B3%A8%E5%86%8C%E4%B8%AD%E7%9A%84%E8%AE%BE%E8%AE%A1%E5%92%8C%E5%AE%9E%E7%8E%B0/
aria-label="更多 - dubbo-go 中将 Kubernets
原⽣作为注册中⼼的设计和实现">更多</a></p></div></li><li class="media mb-4"><div
class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD-rest-%E5%8D%8F%E8%AE%AE%E5%AE%9E%E7%8E%B0/>dubbo-go
中 RES [...]
-在 dubbo-go 中的 REST 协议指的是一种基于 HTTP 协议的远程调用方式。简单的来讲,REST 协议就是把dubbo 服务发布成
RESTful …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD-rest-%E5%8D%8F%E8%AE%AE%E5%AE%9E%E7%8E%B0/
aria-label="更多 - dubbo-go 中 REST 协议实现">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/>Dubbo-go
源码笔记(一) [...]
-对于 C/S 模式的 rpc 请求来说,整个调用栈被拆成了 client 和 server 两部分,所以可以 …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/
aria-label="更多 - Dubbo-go 源码笔记(一)Server
端开启服务过程">更多</a></p></div></li></ul></div></div><div class="row pl-2 pt-2"><div
class=col><ul class="pagination pagination-default"><li class=page-item><a
href=/zh-cn/blog/ aria-label=First class=page-link role=button><spa [...]
+在 dubbo-go 中的 REST 协议指的是一种基于 HTTP 协议的远程调用方式。简单的来讲,REST 协议就是把dubbo 服务发布成
RESTful …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E4%B8%AD-rest-%E5%8D%8F%E8%AE%AE%E5%AE%9E%E7%8E%B0/
aria-label="更多 - dubbo-go 中 REST 协议实现">更多</a></p></div></li><li class="media
mb-4"><div class=media-body><h5 class="mt-0 mb-1"><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/>Dubbo-go
源码笔记(一) [...]
+当拿到一款框架之后,一种不错的源码阅读方式大致如下:从运行最基础的 helloworld demo 源码开始 —> 再查看配置文件 —>
开启各种依赖服务(比如zk、consul) …</p><p class=pt-0><a
href=/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/
aria-label="更多 - Dubbo-go 源码笔记(一)Server
端开启服务过程">更多</a></p></div></li></ul></div></div><div class="row pl-2 pt-2"><div
class=col><ul class="pagination pagination-default"><li class=page-item><a
href=/zh-cn/blog/ aria-label=Fi [...]
<button class="btn btn-primary mb-4
feedback--no">否</button></div><script>const
yes=document.querySelector(".feedback--yes"),no=document.querySelector(".feedback--no");document.querySelectorAll(".feedback--link").forEach(e=>{e.href=e.href+window.location.pathname});const
sendFeedback=e=>{gtag||console.log("!gtag"),gtag("event","click",{event_category:"Helpful",event_label:window.location.pathname,value:e})},disableButtons=()=>{yes.disabled=!0,yes.classList.add("feedback--button__disabled
[...]
<a
href="https://github.com/apache/dubbo-website/new/master/content/zh-cn/blog/_index.md?filename=change-me.md&value=---%0Atitle%3A+%22Long+Page+Title%22%0AlinkTitle%3A+%22Short+Nav+Title%22%0Aweight%3A+100%0Adescription%3A+%3E-%0A+++++Page+description+for+heading+and+indexes.%0A---%0A%0A%23%23+Heading%0A%0AEdit+this+template+to+create+your+new+page.%0A%0A%2A+Give+it+a+good+name%2C+ending+in+%60.md%60+-+e.g.+%60getting-started.md%60%0A%2A+Edit+the+%22front+matter%22+section+at+the+top+of
[...]
<a
href="https://github.com/apache/dubbo-website/issues/new?title=Apache%20Dubbo%20%e5%8d%9a%e5%ae%a2"
target=_blank><i class="fab fa-github fa-fw"></i> 登记问题</a>
diff --git a/zh-cn/sitemap.xml b/zh-cn/sitemap.xml
index 5aa55029fa..ac0dd96b79 100644
--- a/zh-cn/sitemap.xml
+++ b/zh-cn/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://cn.dubbo.apache.org/zh-cn/blog/2023/01/16/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4%E5%8D%87%E7%BA%A7-dubbo3-%E5%85%A8%E9%9D%A2%E5%8F%96%E4%BB%A3-hsf2/</loc><lastmod>2023-02-22T15:03:22+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>https://cn.dubbo.apache.org/zh-cn/docs3-v2/java-
[...]
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://cn.dubbo.apache.org/zh-cn/blog/2023/01/16/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4%E5%8D%87%E7%BA%A7-dubbo3-%E5%85%A8%E9%9D%A2%E5%8F%96%E4%BB%A3-hsf2/</loc><lastmod>2023-02-22T15:03:22+08:00</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>https://cn.dubbo.apache.org/zh-cn/docs3-v2/java-
[...]
\ No newline at end of file
diff --git a/zh-cn/tags/go/index.html b/zh-cn/tags/go/index.html
index 8f039d56e8..6f947990f2 100644
--- a/zh-cn/tags/go/index.html
+++ b/zh-cn/tags/go/index.html
@@ -2,7 +2,7 @@
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url" content="https://cn.dubbo.apache.org/zh-cn/tags/go/"><meta
property="og:title" content="Go"><meta name=twitter:title content="Go"><meta
name=twitter:image:alt content="Apache Dubbo"><meta propert [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class=td-term><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_navbar><ul class="navb [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class=td-outer><main role=main class=td-main><div class=td-content><main
class=taxonomy-taxonomy-page><h1>Tag:
<span>Go</span></h1><div></div><div><article class="card article-teaser
article-type-blog"><h3><a
href=/zh-cn/blog/2022/02/19/%E8%B0%88%E8%B0%88pixiu%E7%9A%84filter/>谈谈Pixiu的Filter</a></h3><nav
class=td-brea [...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class=td-outer><main role=main class=td-main><div class=td-content><main
class=taxonomy-taxonomy-page><h1>Tag:
<span>Go</span></h1><div></div><div><article class="card article-teaser
article-type-blog"><h3><a
href=/zh-cn/blog/2022/02/19/%E8%B0%88%E8%B0%88pixiu%E7%9A%84filter/>谈谈Pixiu的Filter</a></h3><nav
class=td-brea [...]
<script src=/js/bootstrap.min.js
integrity=sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy
crossorigin=anonymous></script>
<script
src=/js/main.min.5d9bbf645e25d374ae8412eedf48df17eb2fa1f70fe6cb544c730a1d145d7bd1.js
integrity="sha256-XZu/ZF4l03SuhBLu30jfF+svofcP5stUTHMKHRRde9E="
crossorigin=anonymous></script>
<script src=https://cdn.jsdelivr.net/npm/@docsearch/js@3></script>
diff --git a/zh-cn/tags/go/index.xml b/zh-cn/tags/go/index.xml
index 4ffe2e6350..bb560f4b0c 100644
--- a/zh-cn/tags/go/index.xml
+++ b/zh-cn/tags/go/index.xml
@@ -859,6 +859,7 @@
</ul>
<hr>
<p>篇幅有限,就介绍到这里。欢迎有兴趣的同学来参与 <a
href="https://github.com/apache/dubbo-go/tree/3.0">dubbogo3.0</a>
的建设,感谢阅读。</p></description></item><item><title>Blog:
dubbo-go源码笔记(二)客户端调用过程</title><link>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B/</link><pubDate>Fri,
15 Jan 2021 00:00:00
+0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%
[...]
+<p>随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go
也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server
端源码导读,希望能引导读者进一步认识这款框架。</p>
<h2 id="前言">前言</h2>
<p>有了上一篇文章<a
href="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/"
title="">《dubbo-go 源码笔记(一)Server服务暴露过程详解》</a>
的铺垫,可以大致上类比客户端服务类似于服务端启动过程。其中最大的区别是服务端通过zk注册服务,发布自己的ivkURL并订阅事件开启监听;而服务端应该是通过zk注册组件,<strong>拿到需要调用的serviceURL</strong>,<strong>更新invoker</strong>并<strong>重写用户的RPCService</strong>,从而实现对远程过程调用细节的封装。</p>
<h2 id="1-配置文件和客户端源码">1. 配置文件和客户端源码</h2>
@@ -2023,6 +2024,7 @@ PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n;</li>
<blockquote>
<p>作者信息: 郑泽超,Apache Dubbo/Dubbo-Go committer,GithubID:
CodingSinger,目前就职于上海爱奇艺科技有限公司,Java/Golang 开发工程师。</p>
</blockquote></description></item><item><title>Blog: Dubbo-go 源码笔记(一)Server
端开启服务过程</title><link>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/</link><pubDate>Thu,
14 Jan 2021 00:00:00
+0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%
[...]
+<p>随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go
也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server
端源码导读,希望能引导读者进一步认识这款框架。</p>
<p>当拿到一款框架之后,一种不错的源码阅读方式大致如下:从运行最基础的 helloworld demo 源码开始 —&gt; 再查看配置文件
—&gt; 开启各种依赖服务(比如zk、consul) —&gt; 开启服务端 —&gt; 再到通过 client 调用服务端
—&gt; 打印完整请求日志和回包。调用成功之后,再根据框架的设计模型,从配置文件解析开始,自顶向下递阅读整个框架的调用栈。</p>
<p>对于 C/S 模式的 rpc 请求来说,整个调用栈被拆成了 client 和 server 两部分,所以可以分别从 server
端的配置文件解析阅读到 server 端的监听启动,从 client 端的配置文件解析阅读到一次 invoker Call
调用。这样一次完整请求就明晰了起来。</p>
<h2 id="运行官网提供的-helloworld-demo">运行官网提供的 helloworld-demo</h2>
diff --git a/zh-cn/tags/java/index.html b/zh-cn/tags/java/index.html
index bc397af0e9..83cd71a209 100644
--- a/zh-cn/tags/java/index.html
+++ b/zh-cn/tags/java/index.html
@@ -2,7 +2,7 @@
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url" content="https://cn.dubbo.apache.org/zh-cn/tags/java/"><meta
property="og:title" content="Java"><meta name=twitter:title
content="Java"><meta name=twitter:image:alt content="Apache Dubbo"><meta p [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class=td-term><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_navbar><ul class="navb [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class=td-outer><main role=main class=td-main><div class=td-content><main
class=taxonomy-taxonomy-page><h1>Tag:
<span>Java</span></h1><div></div><div><article class="card article-teaser
article-type-blog"><h3><a
href=/zh-cn/blog/2023/01/05/dubbo-%E8%BF%9E%E6%8E%A5%E5%BC%82%E6%9E%84%E5%BE%AE%E6%9C%8D%E5%8A%A1%E4%BD%93%
[...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class=td-outer><main role=main class=td-main><div class=td-content><main
class=taxonomy-taxonomy-page><h1>Tag:
<span>Java</span></h1><div></div><div><article class="card article-teaser
article-type-blog"><h3><a
href=/zh-cn/blog/2023/01/05/dubbo-%E8%BF%9E%E6%8E%A5%E5%BC%82%E6%9E%84%E5%BE%AE%E6%9C%8D%E5%8A%A1%E4%BD%93%
[...]
<script src=/js/bootstrap.min.js
integrity=sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy
crossorigin=anonymous></script>
<script
src=/js/main.min.5d9bbf645e25d374ae8412eedf48df17eb2fa1f70fe6cb544c730a1d145d7bd1.js
integrity="sha256-XZu/ZF4l03SuhBLu30jfF+svofcP5stUTHMKHRRde9E="
crossorigin=anonymous></script>
<script src=https://cdn.jsdelivr.net/npm/@docsearch/js@3></script>
diff --git
"a/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.html"
"b/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.html"
index b242701a50..2016cf5947 100644
--- "a/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.html"
+++ "b/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.html"
@@ -2,7 +2,7 @@
<link rel=preload
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
as=style><link
href=/scss/main.min.926378f2234eb1a2b24add8856e8dcfd9d7e1705d4f7faba9fa03fb33a98e04e.css
rel=stylesheet integrity><script src=/js/jquery-3.5.1.min.js
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin=anonymous></script>
<link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@docsearch/css@3><meta
name=theme-color content="#326ce5"><link rel=stylesheet
href=/css/feature-states.css><meta name=description content><meta
property="og:description" content><meta name=twitter:description content><meta
property="og:url"
content="https://cn.dubbo.apache.org/zh-cn/tags/%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/"><meta
property="og:title" content="源码解析"><meta name=twitter:title
content="源码解析"><meta name=twitter:image:al [...]
<link href=/css/community.css rel=stylesheet><link href=/css/contactus.css
rel=stylesheet><script src=/js/script.js></script></head><body
class=td-term><header><nav class="js-navbar-scroll navbar navbar-expand
navbar-dark flex-column flex-md-row td-navbar" data-auto-burger=primary><a
class=navbar-brand href=/zh-cn/><span class=navbar-logo></span><span
class="text-uppercase font-weight-bold">Apache Dubbo</span></a><div
class="td-navbar-nav-scroll ml-md-auto" id=main_navbar><ul class="navb [...]
-<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class=td-outer><main role=main class=td-main><div class=td-content><main
class=taxonomy-taxonomy-page><h1>Tag:
<span>源码解析</span></h1><div></div><div><article class="card article-teaser
article-type-blog"><h3><a
href=/zh-cn/blog/2022/12/28/dubbo-3-%E4%B9%8B-triple-%E6%B5%81%E6%8E%A7%E5%8F%8D%E5%8E%8B%E5%8E%9F%E7%90%86
[...]
+<a href=#>Apache Dubbo 全新改版网站与文档</a> <em>正式上线!</em></h4><p>新版文档仍处于持续完善中,将涵盖
Dubbo3
及最新特性使用方式,我们计划在未来几个月内为用户提供最完善、易用的使用体验!<br>2023-02-21.</p></div></aside></div></header><div
class=td-outer><main role=main class=td-main><div class=td-content><main
class=taxonomy-taxonomy-page><h1>Tag:
<span>源码解析</span></h1><div></div><div><article class="card article-teaser
article-type-blog"><h3><a
href=/zh-cn/blog/2022/12/28/dubbo-3-%E4%B9%8B-triple-%E6%B5%81%E6%8E%A7%E5%8F%8D%E5%8E%8B%E5%8E%9F%E7%90%86
[...]
<script src=/js/bootstrap.min.js
integrity=sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy
crossorigin=anonymous></script>
<script
src=/js/main.min.5d9bbf645e25d374ae8412eedf48df17eb2fa1f70fe6cb544c730a1d145d7bd1.js
integrity="sha256-XZu/ZF4l03SuhBLu30jfF+svofcP5stUTHMKHRRde9E="
crossorigin=anonymous></script>
<script src=https://cdn.jsdelivr.net/npm/@docsearch/js@3></script>
diff --git
"a/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.xml"
"b/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.xml"
index 3338658af1..bd2f7acba7 100644
--- "a/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.xml"
+++ "b/zh-cn/tags/\346\272\220\347\240\201\350\247\243\346\236\220/index.xml"
@@ -10136,6 +10136,7 @@ MetadataService 通过标准的 Dubbo 协议暴露,根据查询条件,会将
</blockquote>
<h2 id="5-总结与展望">5 总结与展望</h2>
<p>应用级服务发现机制是 Dubbo 面向云原生走出的重要一步,它帮 Dubbo 打通了与其他微服务体系之间在地址发现层面的鸿沟,也成为 Dubbo
适配 Kubernetes Native Service 等基础设施的基础。我们期望 Dubbo
在新模型基础上,能继续保留在编程易用性、服务治理能力等方面强大的优势。但是我们也应该看到应用粒度的模型一方面带来了新的复杂性,需要我们继续去优化与增强;另一方面,除了地址存储与推送之外,应用粒度在帮助
Dubbo 选址层面也有进一步挖掘的潜力。</p></description></item><item><title>Blog:
dubbo-go源码笔记(二)客户端调用过程</title><link>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/15/dubbo-go%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%BA%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%B0%83%E7%94%A8%E8%BF%87%E
[...]
+<p>随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go
也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server
端源码导读,希望能引导读者进一步认识这款框架。</p>
<h2 id="前言">前言</h2>
<p>有了上一篇文章<a
href="https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/"
title="">《dubbo-go 源码笔记(一)Server服务暴露过程详解》</a>
的铺垫,可以大致上类比客户端服务类似于服务端启动过程。其中最大的区别是服务端通过zk注册服务,发布自己的ivkURL并订阅事件开启监听;而服务端应该是通过zk注册组件,<strong>拿到需要调用的serviceURL</strong>,<strong>更新invoker</strong>并<strong>重写用户的RPCService</strong>,从而实现对远程过程调用细节的封装。</p>
<h2 id="1-配置文件和客户端源码">1. 配置文件和客户端源码</h2>
@@ -10561,6 +10562,7 @@ client.go: main()</li>
<blockquote>
<p>作者简介 李志信 (GitHubID LaurenceLiZhixin),中山大学软件工程专业在校学生,擅长使用 Java/Go
语言,专注于云原生和微服务等技术方向。</p>
</blockquote></description></item><item><title>Blog: Dubbo-go 源码笔记(一)Server
端开启服务过程</title><link>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%A1%E8%BF%87%E7%A8%8B/</link><pubDate>Thu,
14 Jan 2021 00:00:00
+0000</pubDate><guid>https://cn.dubbo.apache.org/zh-cn/blog/2021/01/14/dubbo-go-%E6%BA%90%E7%A0%81%E7%AC%94%E8%AE%B0%E4%B8%80server-%E7%AB%AF%E5%BC%80%E5%90%AF%E6%9C%8D%E5%8A%
[...]
+<p>随着微服务架构的流行,许多高性能 rpc 框架应运而生,由阿里开源的 dubbo 框架 go 语言版本的 dubbo-go
也成为了众多开发者不错的选择。本文将介绍 dubbo-go 框架的基本使用方法,以及从 export 调用链的角度进行 server
端源码导读,希望能引导读者进一步认识这款框架。</p>
<p>当拿到一款框架之后,一种不错的源码阅读方式大致如下:从运行最基础的 helloworld demo 源码开始 —&gt; 再查看配置文件
—&gt; 开启各种依赖服务(比如zk、consul) —&gt; 开启服务端 —&gt; 再到通过 client 调用服务端
—&gt; 打印完整请求日志和回包。调用成功之后,再根据框架的设计模型,从配置文件解析开始,自顶向下递阅读整个框架的调用栈。</p>
<p>对于 C/S 模式的 rpc 请求来说,整个调用栈被拆成了 client 和 server 两部分,所以可以分别从 server
端的配置文件解析阅读到 server 端的监听启动,从 client 端的配置文件解析阅读到一次 invoker Call
调用。这样一次完整请求就明晰了起来。</p>
<h2 id="运行官网提供的-helloworld-demo">运行官网提供的 helloworld-demo</h2>