阿里云
为了无法计算的价值
打开APP
阿里云APP内打开
学习中心> 阿里巴巴分布式服务框架Dubbo快速入门> 正文

阿里巴巴分布式服务框架Dubbo快速入门

30课时 |
1642人已学 |
免费
课程介绍

Dubbo是阿里巴巴开源的一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

Dubbo于2011年10月由阿里巴巴开源。2018年2月,Dubbo成为Apache基金会孵化项目。2019年5月,Dubbo正式成为Apache基金会顶级项目。

Dubbo特性如下:

面向接口代理的高性能RPC调用:提供高性能的基于代理的远程调用能力,服务以接口为粒度,为开发者屏蔽远程调用底层细节。

智能负载均衡:内置多种负载均衡策略,智能感知下游节点健康状况,显著减少调用延迟,提高系统吞吐量。

服务自动注册与发现:支持多种注册中心服务,服务实例上下线实时感知。

高度可扩展能力:遵循微内核+插件的设计原则,所有核心能力如Protocol、Transport、Serialization被设计为扩展点,平等对待内置实现和第三方实现。

运行期流量调度:内置条件、脚本等路由策略,通过配置不同的路由规则,轻松实现灰度发布,同机房优先等功能。

可视化的服务治理与运维:提供丰富服务治理、运维工具,随时查询服务元数据、服务健康状态及调用统计,实时下发路由策略、调整配置参数。

Dubbo官网:Apache Dubbo

阿里云产品EDAS:https://www.aliyun.com/product/edas

分布式系统定义

 

内容简介:

  1. 基础知识
  2. dubbo配置
  3. 高可用场景
  4. Dubbo原理

 

 

  1. 基础知识

1.什么是分布式系统?
《分布式系统原理与范型》定义:
分布式系统是若干独立计算机的集合 这些计算机对于用户来说就像单个相关系统”。分布式系统(distributed system)是建立在网络之上的软件系统。


随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。

 

Double,是现在开发分布式应用里边使用的非常多的一个RPC框架。那么对于double的学习,分为四章内容。

  1. 首先学习一下分布式系统里边的一些基础理论和一些概念,double的一些基本使用。
  2. 主要讲解常用的以及一些核心的配置。
  3. 主要学习一下double在开发分布式应用中的一些可用场景。第四章,研究一下double的原理。

 

来了解一下分布式理论的一些基础理论。

对于分布式系统的定义,在分布式系统原理与范型这本书中,他是这样说的。分布式系统,是若干独立计算机的集合。

 

这个计算机,对于我们用户来说,像是在使用单个系统,也就是说很多的计算机合起来为用户提供一种系统服务。

那对于用户来说使用这个系统服务,感觉是在用一个单个的完整系统,而不是再用这些独立的计算机。

举一个生活中的例子,比如在使用京东商城进行购物时,登录京东商城完成了整个购物。

对于用户使用来说,体会到的是一个完整的京东商城系统,实际上,京东商城后边有成千上万台独立的该计算机为我们提供服务,而这些所有计算机合起来构成了一个完整的京东商城系统。

那我们这个京东商城,它是一个分布式的系统。那为什么要有分布式系统?

随着互联网的发展,开发的这些网站应用的规模在不断的扩大。它们的功能也越来越复杂,那这种情况下,常规的应用架构就无法应对了,也就是说我们不可能将一个大型的应用能放在某一个服务器上让这个服务器对外提供服务。

 

比如一个应用是淘宝级别的,那可能没有任何一款服务器能抵御住像淘宝的双11那么大的流量,每秒要处理几十万的订单交易,每秒有几个亿的实时数据处理。

 

那面对这种情况怎么办?

既然有一个超大型的系统,不妨把这个大型系统划分成一个个的小功能模块儿。把这些功能模块分布在各个计算机上。那这么多的计算机就合起来组成一个完整的系统提供服务,这就是分布式的架构思想。把系统分成一个个的小模块儿,叫小模块儿,小服务分成这些小模块以后,模块之间也有着千丝万缕的联系,比如A可能要用到BB,可能要用到CC,可能要用到DD,回过头又得用不到B等,这么复杂的关系,急需要一个治理系统来维护我们这个复杂的关系,为了保证系统有条不紊地进行,double就能维护和治理刚才那些复杂的关系。那么有了它,就能轻而易举地使用分布式的思想来架构一个应用。

 

我的学习进度
请登录后查看您的学习进度!
立即登录
本课程相关云产品