微服务 ---Dubbo no1.

1.Dubbo介绍:

在这里插入图片描述

在这里插入图片描述
• 单一应用架构

•	当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。

•	此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。

• 垂直应用架构

•	当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干的几个应用,以提升效率。
•	此时,用于加速前端页面开发的 Web框架(MVC) 是关键。

• 分布式服务架构

•	当垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。
•	此时,用于提高业务复用及整合的 分布式服务框架(RPC) 是关键。

• 流动计算架构

•	当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率。
•	此时,用于提高机器利用率的 资源调度和治理中心(SOA) 是关键。

Dubbo就是资源调度和治理中心的管理工具。

Dubbo 就是类似于webservice的关于系统之间通信的框架,并可以统计和管理服务之间的调用情况(包括服务被谁调用了,调用的次数是如何,以及服务的使用状况)。

Dubbo的架构:

在这里插入图片描述

节点角色说明:
• Provider: 暴露服务的服务提供方。
• Consumer: 调用远程服务的服务消费方。
• Registry: 服务注册与发现的注册中心。
• Monitor: 统计服务的调用次调和调用时间的监控中心。
• Container: 服务运行容器。
调用关系说明:
• 0. 服务容器负责启动,加载,运行服务提供者。
• 1. 服务提供者在启动时,向注册中心注册自己提供的服务。
• 2. 服务消费者在启动时,向注册中心订阅自己所需的服务。
• 3. 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
• 4. 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
• 5. 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。

解决问题:

. 系统间通信
由于淘淘商城是基于SOA的架构,表现层和服务层是不同的工程。所以要实现商品列表查询需要两个系统之间进行通信。
如何实现远程通信?
1、使用WebService:效率不高,它是基于soap协议(http+xml)。项目中不推荐使用。
2、使用restful形式的服务:http+json。很多项目中应用。如果服务越来越多,服务与服务之间的调用关系复杂,调用服务的URL管理复杂,什么时候添加机器难以确定。
3、使用dubbo。使用rpc协议进行远程调用,直接使用socket通信。传输效率高,并且可以统计出系

2. Dubbo连接方式

使用Dubbo进行远程调用实现服务交互,它支持多种协议,如Hessian、HTTP、RMI、Memcached、Redis等等。由于Dubbo将这些协议的实现进行了封装了,无论是服务端(开发服务)还是客户端(调用服务),都不需要关心协议的细节,只需要在配置中指定使用的协议即可,从而保证了服务提供方与服务消费方之间的透明。

扫描二维码关注公众号,回复: 10558870 查看本文章

Dubbo的客户端和服务端有三种连接方式,分别是:广播,直连和使用zookeeper注册中心

3. Dubbo广播

这种方式是dubbo官方入门程序所使用的连接方式,但是这种方式有很多问题。
在企业开发中,不使用广播的方式。
taotao-manager服务端配置:

在这里插入图片描述

客户端配置:
taotao-manager-web的配置修改如下:
在这里插入图片描述

2.2. Dubbo直连
Dubbo直连,首先要取消广播,然后客户端直接到指定的url获取服务即可。
这种方式在企业中一般在开发中环境中使用,但是生产环境很少使用,
因为服务是直接调用,没有使用注册中心,很难对服务进行管理。

服务端配置:
taotao-manager的修改如下,取消广播,注册地址为N/A
在这里插入图片描述
客户端配置:
taotao-manager-web配置如下,取消广播,从指定的url中获取服务
在这里插入图片描述

Dubbo注册中心

Dubbo注册中心和广播配置类似,不过需要指定注册中心类型和注册中心地址,这个时候就不是把服务信息进行广播了,而是告诉给注册中心进行管理,这个时候我们就需要有一个注册中心。

官方推荐使用zookeeper作为注册中心。

发布了76 篇原创文章 · 获赞 9 · 访问量 6780

猜你喜欢

转载自blog.csdn.net/qq_37870369/article/details/89923049