说明

Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高性能、轻量级的开源 Java RPC 框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。简单来说 Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。

Dubbo 目前已经有接近 23k 的 Star ,Dubbo 的 Github 地址:https://github.com/apache/inc...。另外,在开源中国举行的 2018 年度最受欢迎中国开源软件这个活动的评选中,Dubbo 更是凭借其超高人气仅次于 vue.js 和 ECharts 获得第三名的好成绩。

Dubbo 是由阿里开源,后来加入了 Apache 。正式由于 Dubbo 的出现,才使得越来越多的公司开始使用以及接受分布式架构。

为什么用

  1. 负载均衡 —— 同一个服务部署在不同的机器时该调用那一台机器上的服务
  2. 服务调用链路生成 —— 服务之间互相是如何调用的
  3. 服务访问压力以及时长统计 —— 当前系统的压力主要在哪里,如何来扩容和优化
  4. 服务降级 —— 某个服务挂掉之后调用备用服务

案例

使用 SpringBoot+Dubbo 搭建一个简单分布式服务