Dubbo

本文介绍了分布式系统的基础理论,包括其定义和发展历程,重点讨论了分布式服务架构中的RPC远程过程调用技术,如Dubbo、gRPC等,并提及了灰度发布在服务升级中的应用,以及Zookeeper在注册中心中的角色。
摘要由CSDN通过智能技术生成

一、基础知识

1.分布式基础理论

1.1 什么是分布式系统
分布式系统是若干独立计算机的集合,这希望计算机对于用户来说就像是单个的完整的相关系统。
分布式系统是建立在网络之上的软件系统

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

1.2 发展演变
在这里插入图片描述
单一应用架构(ORM):
将所有功能都部署在一起,减少部署节点和成本,小型用于简化增删改查的系统架构
缺点: 扩展要重新对内容进行修改 然后重新打包部署,协同开发不方便,过大的单体项目对于服务器压力过大

垂直应用架构(MVC)
缺点:界面和业务逻辑的实现没有分离开,改前端界面会导致重新打包重新部署,应用之间不可能完全独立,因为各个应用之间会有交互

分布式服务架构(RPC:远程过程调用)
界面和业务逻辑分离开,只需要界面调用需要用业务应用就可以,不同应用之间也可以互相调用
当A服务器要去调用B服务器内的功能,不同服务器之间服务调用 称为RPC

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

在这里插入图片描述
在这里插入图片描述
远程过程调用–过程:A服务器想要调用B服务器的方法,需要先连接服务器,两台服务器连接后,A服务器将调用信息(对象及参数)及参数序列化发送给B服务器,B服务器收到信息,将信息反序列化获取并解析调用信息,调用对应的函数(服务处理),获取返回值,再经过序列化,将执行结果返回给A服务器,A服务器又将消息反序列化 获得其中的返回值

RPC框架核心:只有两点,能否快速建立服务器之间的连接序列化机制

RPC框架:Dubbo、gRPC、Thrift、HSF(High Speed Service Framework)

2.Dubbo

Apache Dubbo:高性能的JAVA RPC框架
具有如下特点:面向接口代理的高性能RPC调用,负载均衡、支持多种注册中心、高度可扩展、流量调度(灰度发布)、可视化运维管理

灰度发布:将旧版本服务慢慢全部替换为新版本服务
我们使用Zookeeper 作为注册中心

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值