分布式系统介绍

2022-03-28  本文已影响0人  生不悔改

遇到一个新的技术,或名词,我们都是应该去考虑三个问题,
A.这个技术是什么
B.解决什么问题的
C.如何去解决的

单体架构

工作的前两年都是做的单体架构,例如一个普通的社保系统。


单体架构.png

这种单体架构,将系统所有的模块用包划分,然后写在一个工程项目中,并且部署在一台服务器上,用户多了,就加机器,增加访问量,这种架构是最传统的一种架构。
如果现在一个公司的业务量不大的话,这种架构完全可以适用,但是如果业务发展越来越好,访问越来越多,那这种架构的弊端就会慢慢展现出来。当有业务调整,必须要将整个系统里面的相关业务代码重新开发,与之耦合的业务代码也都是要重新二次开发,这为系统的后续维护和二次开发带来了很大的难度,甚至原开发人员离职,后续开发人员都不敢乱动里面的代码。但是运维起来却很简单。

单体架构缺点:

业务越来越复杂,单体架构扩展性不足,业务扩展带来的代价越来越大;
用户越来越多,程序承受的并发越爱越高,单体应用的并发能力有限;
单体应用的业务在同一个程序中,增删改业务修改,也会影响其他代码,给测试增加了难度
容易由于单点故障导致整个系统无法访问的情况

单体架构优点:

部署简单 :由于是完整的结构体,可以直接部署在一份服务器上即可
技术单一 :项目不需要复杂的技术栈,往往一套熟悉的技术栈就可以完成开发
用人成本低 :单个程序员可以完成业务接口道数据库的整个流程

分布式架构

基于单体架构,随着业务场景的持续增长化,单体架构越来越难以满足企业的需求了,行业中的大佬开始研究,最终慢慢演化成了如今的分布式架构,其实谈到分布式架构就一定要说微服务,微服务是分布式架构的基石。
还是原来的社保系统,如果改造成分布式架构:


分布式架构.png

分布式架构将原来单体架构里面的每个模块都单独做成一个系统,然后对外提供服务(微服务),然后各个系统之间使用网络通信,但是对外我们只暴露一个访问地址,从而站在用户的角度来说还是以为是一个系统,其实这一个系统里面包含了几十个系统。而且还可以根据不同的系统的微服务调用情况,适当的给访问量大的模块系统增加机器,扩容,提高并发的访问量。

分布式架构缺点:

运维成本高,部署系统多,对部署的顺序也有一定的要求
网络通信的不确定性
对开发技术人员的技术要求提高
系统的响应时间会变长

分布式架构优点:

系统扩展性强
系统并发性强
系统可用性强
系统的性能强
俗称三高:高可用高并发高性能

总结:

什么是分布式系统:基于微服务,将传统的单体架构系统拆分成多个微服务系统,多个微服务系统基于网络通信,协作组成一个外部开来整体唯一的系统。

为什么要使用:因为微服务系统能够满足日益增长的业务需求发展,对外提供高可用,高并发,高性能的服务系统。

分布式是如何做到的:使用各种复杂的技术,去拆分单体架构中的模块,并解决其中的拆分和网络带来的问题。

上一篇下一篇

猜你喜欢

热点阅读