<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>文档 on Apache Dubbo</title><link>https://dubbo.apache.org/zh-cn/docs/</link><description>Recent content in 文档 on Apache Dubbo</description><generator>Hugo</generator><language>zh-cn</language><atom:link href="https://dubbo.apache.org/zh-cn/docs/index.xml" rel="self" type="application/rss+xml"/><item><title>Dubbo3 简介</title><link>https://dubbo.apache.org/zh-cn/docs/introduction/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/docs/introduction/</guid><description>&lt;div class="pageinfo pageinfo-primary"&gt;
&lt;p&gt;此文档已经不再维护。您当前查看的是快照版本。如果想要查看最新版本的文档，请参阅&lt;a href="https://dubbo.apache.org/zh-cn/overview/what/overview/"&gt;最新版本&lt;/a&gt;。&lt;/p&gt;

&lt;/div&gt;

&lt;p&gt;Apache Dubbo 是一款微服务开发框架，它提供了 RPC通信 与 微服务治理 两大关键能力。这意味着，使用 Dubbo 开发的微服务，将具备相互之间的远程发现与通信能力，
同时利用 Dubbo 提供的丰富服务治理能力，可以实现诸如服务发现、负载均衡、流量调度等服务治理诉求。同时 Dubbo 是高度可扩展的，用户几乎可以在任意功能点去定制自己的实现，以改变框架的默认行为来满足自己的业务需求。&lt;/p&gt;
&lt;p&gt;Dubbo3 基于 Dubbo2 演进而来，在保持原有核心功能特性的同时， Dubbo3 在易用性、超大规模微服务实践、云原生基础设施适配、安全设计等几大方向上进行了全面升级。
以下文档都将基于 Dubbo3 展开。&lt;/p&gt;
&lt;h2 id="what-dubbo3-is"&gt;What Dubbo3 is&lt;/h2&gt;
&lt;p&gt;如开篇所述，Dubbo 提供了构建云原生微服务业务的一站式解决方案，可以使用 Dubbo 快速定义并发布微服务组件，同时基于 Dubbo 开箱即用的丰富特性及超强的扩展能力，构建运维整个微服务体系所需的各项服务治理能力，如 Tracing、Transaction 等，Dubbo 提供的基础能力包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;服务发现&lt;/li&gt;
&lt;li&gt;流式通信&lt;/li&gt;
&lt;li&gt;负载均衡&lt;/li&gt;
&lt;li&gt;流量治理&lt;/li&gt;
&lt;li&gt;&amp;hellip;..&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Dubbo 计划提供丰富的多语言客户端实现，其中 Java、Golang 版本是当前稳定性、活跃度最好的版本，其他多语言客户端正在持续建设中。&lt;/p&gt;
&lt;p&gt;自开源以来，Dubbo 就被一众大规模互联网、IT公司选型，经过多年企业实践积累了大量经验。Dubbo3 是站在巨人肩膀上的下一代产品，它汲取了上一代的优点并针对已知问题做了大量优化，因此，Dubbo 在解决业务落地与规模化实践方面有着无可比拟的优势：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;开箱即用
&lt;ul&gt;
&lt;li&gt;易用性高，如 Java 版本的面向接口代理特性能实现本地透明调用&lt;/li&gt;
&lt;li&gt;功能丰富，基于原生库或轻量扩展即可实现绝大多数的微服务治理能力&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;超大规模微服务集群实践
&lt;ul&gt;
&lt;li&gt;高性能的跨进程通信协议&lt;/li&gt;
&lt;li&gt;地址发现、流量治理层面，轻松支持百万规模集群实例&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;企业级微服务治理能力
&lt;ul&gt;
&lt;li&gt;服务测试&lt;/li&gt;
&lt;li&gt;服务Mock&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Dubbo3 是在云原生背景下诞生的，使用 Dubbo 构建的微服务遵循云原生思想，能更好的复用底层云原生基础设施、贴合云原生微服务架构。这体现在：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;服务支持部署在容器、Kubernetes平台，服务生命周期可实现与平台调度周期对齐；&lt;/li&gt;
&lt;li&gt;支持经典 Service Mesh 微服务架构，引入了 Proxyless Mesh 架构，进一步简化 Mesh 的落地与迁移成本，提供更灵活的选择；&lt;/li&gt;
&lt;li&gt;作为桥接层，支持与 SpringCloud、gRPC 等异构微服务体系的互调互通&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="一站式微服务解决方案"&gt;一站式微服务解决方案&lt;/h2&gt;
&lt;p&gt;Dubbo 提供了从服务定义、服务发现、服务通信到流量管控等几乎所有的服务治理能力，并且尝试从使用上对用户屏蔽底层细节，以提供更好的易用性。&lt;/p&gt;</description></item><item><title>What's New in Dubbo3</title><link>https://dubbo.apache.org/zh-cn/docs/new-in-dubbo3/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/docs/new-in-dubbo3/</guid><description>&lt;div class="pageinfo pageinfo-primary"&gt;
&lt;p&gt;此文档已经不再维护。您当前查看的是快照版本。如果想要查看最新版本的文档，请参阅&lt;a href="https://dubbo.apache.org/zh-cn/overview/what/"&gt;最新版本&lt;/a&gt;。&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id="全新服务发现模型"&gt;全新服务发现模型&lt;/h2&gt;
&lt;p&gt;相比于 2.x 版本中的基于&lt;code&gt;接口&lt;/code&gt;粒度的服务发现机制，3.x 引入了全新的&lt;a href="../concepts/service-discovery"&gt;基于应用粒度的服务发现机制&lt;/a&gt;，
新模型带来两方面的巨大优势：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;进一步提升了 Dubbo3 在大规模集群实践中的性能与稳定性。新模型可大幅提高系统资源利用率，降低 Dubbo 地址的单机内存消耗（50%），降低注册中心集群的存储与推送压力（90%），
Dubbo 可支持集群规模步入百万实例层次。&lt;/li&gt;
&lt;li&gt;打通与其他异构微服务体系的地址互发现障碍。新模型使得 Dubbo3 能实现与异构微服务体系如Spring Cloud、Kubernetes Service、gRPC 等，在地址发现层面的互通，
为连通 Dubbo 与其他微服务体系提供可行方案。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在 Dubbo3 前期版本将会同时提供对两套地址发现模型的支持，以最大程度保证业务升级的兼容性。&lt;/p&gt;
&lt;h2 id="下一代-rpc-通信协议"&gt;下一代 RPC 通信协议&lt;/h2&gt;
&lt;p&gt;定义了全新的 RPC 通信协议 &amp;ndash; Triple，一句话概括 Triple：它是基于 HTTP/2 上构建的 RPC 协议，完全兼容 gRPC，并在此基础上扩展出了更丰富的语义。
使用 Triple 协议，用户将获得以下能力&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;更容易到适配网关、Mesh架构，Triple 协议让 Dubbo 更方便的与各种网关、Sidecar 组件配合工作。&lt;/li&gt;
&lt;li&gt;多语言友好，推荐配合 Protobuf 使用 Triple 协议，使用 IDL 定义服务，使用 Protobuf 编码业务数据。&lt;/li&gt;
&lt;li&gt;流式通信支持。Triple 协议支持 Request Stream、Response Stream、Bi-direction Stream&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="云原生"&gt;云原生&lt;/h2&gt;
&lt;p&gt;Dubbo3 构建的业务应用可直接部署在 VM、Container、Kubernetes 等平台，Dubbo3 很好的解决了 Dubbo 服务与调度平台之间的生命周期对齐，Dubbo 服务发现地址
与容器平台绑定的问题。&lt;/p&gt;</description></item><item><title>Spring Boot 快速开发 Dubbo 服务</title><link>https://dubbo.apache.org/zh-cn/docs/quick-start/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/docs/quick-start/</guid><description>&lt;div class="pageinfo pageinfo-primary"&gt;
&lt;p&gt;此文档已经不再维护。您当前查看的是快照版本。如果想要查看最新版本的文档，请参阅&lt;a href="https://dubbo.apache.org/zh-cn/overview/quickstart/"&gt;最新版本&lt;/a&gt;。&lt;/p&gt;

&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;Dubbo 还提供了包括XML、API 等多种启动与接入方式，更多开发方式和配置细节可参见&lt;a href="../references/configuration/"&gt;配置手册&lt;/a&gt;。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="下载示例代码"&gt;下载示例代码&lt;/h2&gt;
&lt;p&gt;完整示例代码在 &lt;a href="https://github.com/apache/dubbo-samples/tree/master/1-basic/dubbo-samples-spring-boot"&gt;dubbo-samples&lt;/a&gt; 中&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;下载源码&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git clone -b master https://github.com/apache/dubbo-samples.git
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="2"&gt;
&lt;li&gt;进入示例目录&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#b58900"&gt;cd&lt;/span&gt; dubbo-samples/dubbo-samples-spring-boot
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ls &lt;span style="color:#586e75"&gt;# 查看目录结构&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="快速运行示例"&gt;快速运行示例&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;编译 Provider
在 dubbo-samples-spring-boot 目录，进入 dubbo-samples-spring-boot-provider 目录并执行 maven 命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#b58900"&gt;cd&lt;/span&gt; ./dubbo-samples-spring-boot-provider
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mvn clean package
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="2"&gt;
&lt;li&gt;运行 Provider&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;java -jar ./target/dubbo-samples-spring-boot-provider-1.0-SNAPSHOT.jar
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="3"&gt;
&lt;li&gt;编译 Consumer
进入 dubbo-samples-spring-boot-consumer 目录并执行 maven 命令&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#b58900"&gt;cd&lt;/span&gt; ../dubbo-samples-spring-boot-consumer
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mvn clean package
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ol start="4"&gt;
&lt;li&gt;运行 consumer&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;java -jar ./target/dubbo-samples-spring-boot-consumer-1.0-SNAPSHOT.jar
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="详细解释"&gt;详细解释&lt;/h2&gt;
&lt;h3 id="定义服务接口"&gt;定义服务接口&lt;/h3&gt;
&lt;p&gt;dubbo-samples-spring-boot-interface/DemoService.java&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-java" data-lang="java"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#719e07"&gt;package&lt;/span&gt; org.apache.dubbo.samples.basic.api;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#268bd2"&gt;public&lt;/span&gt; &lt;span style="color:#268bd2"&gt;interface&lt;/span&gt; &lt;span style="color:#268bd2"&gt;DemoService&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; String &lt;span style="color:#268bd2"&gt;sayHello&lt;/span&gt;(String name);
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="提供方实现接口并暴露服务"&gt;提供方实现接口并暴露服务&lt;/h3&gt;
&lt;p&gt;dubbo-samples-spring-boot-provider/DemoServiceImpl.java&lt;/p&gt;</description></item></channel></rss>