dubbo入门

一、背景

随着互联网的发展,网站应用越来越多,常规的垂直应用架构已经无法满足需要,分布式服务架构与流动计算架构就越来越受欢迎。


二、架构分类

1)单应用架构

网站流量较小,将多个功能打包在一起部署,减少部署的节点与成本。

2)垂直应用架构

网站流量越来越大,单应用架构通过增加机器带来的性能提升越来越小,将应用拆分成多个互不相干的几个应用,提升效率。

3)分布式架构

应用越来越多,应用之间需要交互,将核心的业务抽离出来,做为一个独立的服务,逐渐形成一个稳定的服务。

4)流动计算架构

增加调度中心基于访问压力实时对集群进行管理。


三、集群与分布式的区别

1)集群是物理概念,一堆机器放在一起即可以称为一个集群。在工作方式上是将同一个任务平行的放在不同的服务器上或者是节点上。集群可运行一个或多个分布式系统。

2)分布式是一种工作方式,是将一个业务拆分为多个子业务,分部在不同的节点上。每个分布式的节点都可以做集群。

3)举例:

一个老板开了一个餐馆,招了一个炒菜师傅A,什么菜都炒。随着人流量的增加一个炒菜师傅忙不过来,老板又请了一个炒菜师傅B。炒菜师傅B与炒菜师傅A能炒同样的

菜,干同样的活。那么炒菜师傅A与炒菜师傅B的关系就可以理解为集群。随着人流量的继续增加,老板又请了一个配菜师傅,这个配菜师傅只负责配菜,那么配菜师傅与炒菜师傅的关系就是分布式。


四、分布式架构组成与调用关系

组成:

1、服务容器(container)

2、服务提供者(provider)

3、服务消费者(consumer)

4、注册中心(registry)

5、监控中心(monitor)

调用关系:

1、服务容器负责启动、加载服务提供者

2、服务提供者启动后向注册中心注册自己提供的服务

3、服务消费者启动后向注册中心订阅服务(获取服务提供者地址列表)

4、注册中心返回服务提供者地址列表给服务消费者,如果变更,注册中心基于长连接的形式推送变更数据给服务消费者

5、服务消费着获取到地址列表,根据负载均衡算法选定一个服务提供者调用。

6、服务提供者与服务消费者会在内存中记录调用次数与时间,每分钟将统计数据发送到监控中心。监控中心记录这些数据。


你可能感兴趣的:(dubbo)