00:00
好,那么下边我们来说一下单一架构,从我们技术的发展,架构的演进这个角度来说呢,我们分布式架构之前大家用的都都是单一架构,那什么是单一架构呢?啊,这个判断的标准是什么?就是我们开发项的一个工一个工。打成一个瓦包,哎,Ma文的package命令打包对吧,能打成一个瓦包,动态外一个外部工程可以打成一个外包,一个外包呢,它运行在一个什么呀comp上,哎,那这个时候呢,这时我们就管它叫做这个单一架构啊,其实关键呢,还是因为它运行在一个to cat上面啊,这是一个关键的,我们没有去给它去配置集群,也没有去给它。
01:01
啊,做这个其他的模块的拆分等等这样的操作啊,所以说因为它最终运行在一个上边,我们这是叫单一架构,单一架构呢,也有一些个别的名称哈,比如说呢,它叫什么这个all in one啊。啊,或者叫做这个单机版啦,啊等等啊,还会有些这个其他的这个名字,这个我们了解了解就行,哎。那么我们说这个单一架构呢,我们。发展哈,随着技术的这个演进,它也有一些个,呃,在这个技术上也会有一些个变化,哎,我们叫做这个演变吧,有一些个什么样的一些个演变呢?比如说我们这个工程哈,在最初的最简单的单一架构的基础上,我们进行水平拆分和垂直拆分,啥叫水平拆分呢?其实就是我们所谓的这个咱们横着切。
02:09
哎。打开一下我的这个画画的。在这个里边,大家看我们一个项目。原本啊是这样一个,这是一个单一的一个项目,那么后边呢,我们要进行这个水平拆分。哎,就是这样,这个横着去进行一下这个切割,然后呢,让我们这个,呃,这个这个项目啊,以前的以一个拆个这个工,这我们一个工,然后呢,下边呢,去拆分成我们的模块工程。
03:13
他们彼此之间呢,用这个依赖的方式整合在一起。哎,复制一下这个,那么这里边儿呢。我们的外工程啊,就只有他将来是打成一个包,哎,他会成一包,然后这些模块工程呢,都会变成这个里边的。这是他们创建的时候,这个打包方式决定的。
04:00
哎,画一些个箭头,我们去指一下,哎是这样这个拆分过来的。哎,然后这个web工程是打成一个袜包。这些个架包呢,它们是作为我们这个袜包里边Li目录下边的啊,这些架包部署的时候呢,我们到tomcat上面去部署的时候,诶,就只是把这个挖包放在tomcat上面去部署,去运行就好了,所以说呢,开发的时候是拆分成了几个工程去开发的,但其实呢,最后运行的时候还是一个瓦包在一个time盖的上面去跑,所以这个瓦本质上来说还是一个单一架构,我们这么介绍完了以后呢,大家应该觉得很熟悉,哎,这其实不就是咱们咱们。
05:06
众筹这个项目啊,后台管理系统,哎,这部分呢,它使用的这样一个结构啊,他们彼此之间从上到下有一个依赖的这样一个关系,哎,所以说呢,它是能够去拆分成几个工程,但是吧,本质上到最后运行的时候一看,它还是一个单一架构,还是一个单机版啊,哎,只不过我们拆分了以后呢,我们的代码并不局限于一个工程了啊,不,不是说把所有代码都写到一个里边了,这样的话呢,一定程度上吧,提高了我们的这个模块化,组件化的这个程度啊。我们在这写一下啊,把原来的一个工程拆分成哎,多个模块。啊,分别进行这个开发啊,一定程度上提高了我们这个模块化这个程度啊,这是我们所谓的这个拆分啊,那我们还有我们的垂直拆分,垂直拆分呢,就是说这个东西咱们竖着。
06:29
哎,这个竖着切,怎么切呢?咱们再来重新画一个。就是说一个项目哈,它原本是这样的,这里边儿呢,有很多个模块,比如说一个企业管理系统啊,我们有这个人事档案管理子系统,我们有这个库存的管理的子系统,我们有这个订单的管理的子系统,我们有这个呃,行政管理的子系统等等啊那么这个时候呢,我们按照它的不同的业务功能进行一个拆分。
07:05
哎,每一个业务功能呢,啊,一个就是成为一个单独的一个模块,哎,进行这样的拆分。比如说呢,我们这边有人事答案管理系统。啊,这是从这里边拆出来的,还有呢,比如说呢,我们有这个行政管理系统。行政管理咨询,比如说呢,我们这边有一个。呃,订单。比如说我们有这个库存。好,这样的拆分了以后呢,我们可以去。
08:07
啊,分别的去进行这个运行。这个时候吧。因为他拆分了,所以说呢,呃,可以他们运行在自己这个各自的这个上,这个是可以的。这个是可以的,哎,从这儿看呢,有一点这个分布式架构的这个味道了啊,有点这个有点这个意思了,但是呢,这个呃,因为他们不存在什么呀,不存在这个模块之间的相互的调用啊,这个垂直拆分呢,只是把它们独立出来了,每一个模块,每一个业务功能,独立创建一个工程啊,独立去进行这个开发,所以说呢,它其实你看它局部呢,它里边还是按照单一架构的那个逻辑啊去开发的每一个模块呢,其实你相当于把一个大的项目拆分成了几个小的项目分别去开发的,他们各自是一个独立的一个项目啊,所以说你相当于只是开发了多个单一架构的项目,这个呢,因为不存在彼此拈之间的这个调用,所以说呢,它这个还还不能够叫做一个真正的一个分布式架构。
09:23
哎,这我们写一下啊,这个是按照业务功能功能啊,把我们这个项目去拆分成多个。嗯,模块工程,但是由于他们彼此之间,由于他们彼此之间呢,是不存在。
10:10
彼此之间呢,不存在模块之间的调用,所以呢,还不能呃,算作。一个真正的啊分布式架构,哎,分式架构呢,我们后边会给大家去说,分布式架构是存在模块之间的这个调用的啊,是基于我们方法的远程调用去实现的,有了这个啊才能叫做一个分布式架构,因为它的模块之间呢,是能够互相之间进行通信的啊,必须得满足这个条件才可以。它相当于什么呢?我们这个垂直拆分啊,它就相当于把一个项目拆分成多个小小的项目。
11:11
分别去开发。
我来说两句