00:00
各位同学大家好,我们开始上课,今天我们给大家介绍是spring cloud第二季的第15章spring cloud stream消息驱动。OK,那这一章呢,也非常非常的重要,而且它的设计的理念和思想非常值得我们借鉴。那老规矩吧,又接触到了一个新技术。那么我们又来。四个维度是什么,能干什么,去哪下,怎么玩,最终永远的hello world。那么学习方法上刷一个新技术的思路上面杨哥已经给大家强调过,这个方法论已经多次,不许懒,那么自己将来以后没有我了,学其他技术也可以按照这五个维度一点点的。拱进去,每天进一寸,有一进一寸的欢喜,学习上咱们呢,不要偷懒,那接下来。我们呢,先不打开。
01:02
我们要看看就是什么情况下。我们为什么?引入。Cloud stream。那么他解决的痛点是什么?好端端的,我们为什么要学一个新技术呢?在学。What之前,我们先来看看它解决的痛点。好。首先请同学们看一下。消息驱动消息总线消息消息。你会首先想到一种东西是什么?是不是我们最经典的东西?MQ消息。中间键。兄弟们,没问题吧?那下面的问题是我们现在在实际企业当中常见常用的消息中间件。至少。
02:00
有四种active。MQ rabbit MQ。小兔子上一讲才讲过对吧,我们讲config和bus的配置的时候,还有rocket。还有我们的大数据里面。常用的卡夫卡。对,四个消息中间这样都让你学习,都要让你掌握的话,咱们别干别的了,一个月你能把这四个全部搞通,小子相当不错了,可是我们企业里面可能我学的是rabbit MQ,但是我跑到公司里面的话,可能用的是卡夫卡。可能我学的是rocket MQ,跑到公司里面用的是rocket MQ,那么下面呢?陈雪学习起来负担重,这是第一个问题,第二个问题,现在的系统几乎啊可以把它这么理解。三块。前中后前就是V5前端妹子。
03:04
中就是我们的Java程序啊,How可以把它理解为大数据平台,那比方说京东这个网站是中间部分,它用Java一线构建起京东购物商城了,出了一大堆一大堆的数据给后面的我们的大数据平台去分析,做那些广告推荐啊,做那些。商品分析定位啊,那么这个时候将会导致出现一个问题是有可能你Java这个平台,你选择的消息中间件是MQ,但是后面你的大数据平台,你用的是卡夫卡,如果从宏观上来看的话,会导致你一个系统里面可能啊,我们说可能。存在。两种MQ,那么这个时候就变成了一种非常困难的时候。第一个。
04:02
缺画。第二个。维护第三个开发,那兄弟们各种困难就来了,有可能啊,Java和大数据,其实它的边界你不一定这么非常的严格,没有听说过这个MQ只能Java用,大数据不能用,反过来讲也是一样,那这种问题将会导致开发工程师和我们实际的落地产生非常大的痛苦,因为没引入一个技术,你市面上不见得有这么多大牛,什么都会,什么都懂,能搞懂一个rabbit MQ玩精了已经非常不错了,可问题现实呢?还有其他的更大的挑战,那么这样的话呢,导致我们在技术切换,技术使用的过程当中。产生了一大堆的麻烦,那么我们得想招啊。有没有一种新的技术?
05:00
但是。让我们不再。关注。具体。MQ的细节。我们只需要用一种适配。绑定的方式。自动的。给我们。在各种MQ。累。切换。明白。换句话说。你下面可能用的是四种MQ。听懂了吧,也就是说这四种你都有可能用。抱歉,我现在也崩溃了,我学不动,我也不想研究这么多了。我们就找一个。OK。那么这货。就是可以。
06:03
屏蔽底层的细节插件,让我只需要操作一个cloud stream就可以操作底层下面各种各样不同的MQ,达到了我们的切换维护开发难度困难下降的目的。你不要去认识这么多了,你只需要认识一个好比。你是一个牛逼的警察,东南西北四条街都存在着不安定因素,那你怎么办?哪一个是最跳的最凶的,我打一个,其他那三条就乖了。那么cloud stream想干的事情就是一句话给大家说清楚来。屏蔽底层消息中心间的差异,降低切换、开发和维护成本,统一消息的编程模型。清楚啊。再说直白一点。同学们假设底层有。
07:00
三种数据库,我人口数据库。MYSQL数据库和微软的SQL server数据库。我也不想研究这么多数据库了,我只认Java里面的一个。那么这个时候我们是不是讲过以前讲过了啊,Harber这么一个东东,你也不用告诉我三种不同的语法,反正har给我提供了一个它的API叫session,那么这个时候我后面有多种数据库,我用一个就来操作,那这块就是我们消息驱动的出现的原因。好。换句话说,下面你也不要管那么多消息,中间键你只认一个,我用spring cloud stream就可以屏蔽中间键的差异,统一我们的消息编程模型,OK,那么好,我们下来老规矩,一定要先看看官网,那么打开。
我来说两句