Dubbo学习笔记 分布式理论及Dubbo

Posted Johnny*

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dubbo学习笔记 分布式理论及Dubbo相关的知识,希望对你有一定的参考价值。

分布式理论

什么是分布式系统

分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统。
分布系统(distributed system)是建立在网络之上的软件系统

应用架构的发展演变

在这里插入图片描述

单一应用架构

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

  1. 不易于扩展,每次扩展新功能都需要将项目重新打包 成war包再重新部署到各个服务器上
  2. 随着功能的不断增,系统越显臃肿。
    在这里插入图片描述

垂直应用架构

按功能将系统拆分成多个应用并分别部署到不同的服务器上。

缺点:

  1. 应用的用户界面和业务逻辑代码未分离,修改某个应用的非业务逻辑代码需要这个应用重新部署。
  2. 各个应用之间需要交互。
    在这里插入图片描述

分布式服务架构

将用户界面与业务逻辑代码拆分,分别部署在不同的服务器上。

在这里插入图片描述

如何拆分业务模块、各个模块之间如何实现调用
解决方案

在这里插入图片描述

RPC

Remote Procedure Call ,远程过程调用一种技术思想。它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不是程序员显示编码这个过程调用的细节。即程序眼无论是调用本地的还是远程的函数,本质上编写的调用代码基本相同。

在这里插入图片描述
本质过程是客户端和服务端建立起通讯连接,进行过程函数的调用和结果的返回。

调用详细过程:

在这里插入图片描述
一个RPC框架的性能好坏主要参考两点:

  1. 能否在通讯双方快速建立起连接,即通讯效率。
  2. RPC序列化与反序列化速度快与否,即序列化与反序列化效率。

Dubbo

Apache Dubbo 是一款高性能JAVA RPC框架

特性

在这里插入图片描述

设计架构

在这里插入图片描述

以上是关于Dubbo学习笔记 分布式理论及Dubbo的主要内容,如果未能解决你的问题,请参考以下文章

分布式服务的事务如何处理?比如dubbo,服务与服务之间的事务怎么处理比较好,现在有没有开源的解决方案?

GFS分布式文件系统(相关理论及实验操作详解)

CAP理论及Zookeeper和Eureka对比

《机器学习》(周志华)第4章 决策树 笔记 理论及实现——“西瓜树”

《机器学习》(周志华)第4章 决策树 笔记 理论及实现——“西瓜树”——CART决策树

dubbo学习笔记