最新 Dubbo3 深入理解原理系列

1、【最新Dubbo3深入理解】近年互联网架构发展_微服务

互联网的发展

随着互联网的发展,用户规模、数据规模、请求规模逐渐扩大,常规的单体架构、垂直应用架构已经无法满足网站需要,因此需要通过 分布式架构流动计算架构 来对系统进行优化升级,提升性能来应对大规模的用户请求!

1、【最新Dubbo3深入理解】近年互联网架构发展_RPC_02

单一应用架构

将所有功能都揉进一个应用中,核心就是面向数据库的 CRUD 操作,该架构中的关键就是 ORM,通过 ORM 思想来操作数据库!

垂直应用架构

由单一应用架构进一步升级,按照子系统进行拆分,每个 子系统独立部署共享数据库资源

解决了单体架构中子系统耦合程度高、扩展性差、不好维护的问题

像现在许多小公司,使用的还都是垂直应用架构,因为访问量、数据量都不大,垂直应用架构部署、开发简单,完全可以满足需求!

对于电商系统来说,垂直应用架构就是 Web 端 部署为一个 jar 包 ,Web 端应用是用户进行购物、结算等操作的,而 后台管理端 部署为另一个 jar 包 ,用于工作人员管理商品、库存的,他们是 两个不同的 JVM 进程

1、【最新Dubbo3深入理解】近年互联网架构发展_RPC_03

RPC 架构

RPC 架构由垂直应用架构进一步演变,就是为了解决不同模块之间调用的问题

1、【最新Dubbo3深入理解】近年互联网架构发展_微服务_04

但是 RPC 架构也存在问题:比如库存管理模块压力比较大,我们 想要对库存管理模块进行扩容 ,部署多份,那么我们必须要 将后台管理端部署多份 才可以达到这个效果,这显然资源比较浪费,因为后台管理端还包括了商品管理模块和订单模块

分布式架构

由 RPC 架构进一步升级,将应用的不同模块进行进一步的拆分,使得单个模块职责更加单一,相比于 RPC 架构,可以进行负载均衡、服务注册、服务监控等功能

1、【最新Dubbo3深入理解】近年互联网架构发展_RPC_05

微服务架构

微服务架构是 SOA 架构的升级,其实现在微服务架构和 SOA 架构指的基本上就是一个东西了,只不过微服务架构是 SOA 架构做到极致的架构

通过微服务架构对多个应用进行编排、服务治理、服务注册、服务发现、负载均衡、限流、配置中心等操作

1、【最新Dubbo3深入理解】近年互联网架构发展_RPC_06