Dubbo初体验

Dubbo

image-20200802224902989

Privider:服务提供者,提供服务。

Consumer:服务消费者,调用提供者中的服务。

Registry:注册中心,一般用zookeeper注册中心。

流程:服务提供者提供暴露的接口,并注册到注册中心中,然后消费者再从注册中心拿到暴露的接口,即可调用提供者中的接口中的方法。

Provider和Consumer两个都是放在容器内的,而常用的容器有spring容器和springMVC容器

实际开发

实际开发过程中,采用分包的方式进行,即创建一个maven java工程,里面放实体类和service接口,提供者和消费者都需要引用这个接口工程的包。

image-20200803091306254

使用zookeeper需要引用zookeeper依赖

image-20200803091355952

分布式服务架构

在IDEA中创建的是javaWeb应用程序,属于一个网站的模块中应用,多个模块组成一个网站。网站类似于一个平台。

单一应用架构

当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。

垂直应用架构

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

分布式服务架构

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

流动计算架构

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

 

RPC的理解:核心业务类似于电商网页的骨架页面,能快速响应,而后再使用ajax请求,取的其中的具体数据以及业务。

posted @ 2020-08-03 13:05  lee的学习博客  阅读(98)  评论(0)    收藏  举报