00:00
同学们,我们接下来呢,写一写这个基于插件的延迟消息的代码。哎,代码的这个架构呢。是这样的,咱们一起看一下。跟我刚才画的图儿一样啊,也是一个生产者。要走一个叫延迟的一个计算机。完了,延迟交换机根据延迟loading k路由到一个叫延迟队列里。完延迟的位置是在这儿,交换机这个位置,对这个位置。完了呢,队列被消费者所消费,哎,就这么简单是吧?就这么简单,所以呢,我们重点是设置延迟交换机。也就意味着在声明交换机的时候,要把交换机进行参数设定。要求它必须是什么类型呢?必须是这个类型,自从我们安装完插件之后,对我们登进去啊,登离已经过期了,重新登一下。
01:01
自从安装完插件之后,你会发现交换机的里面多了一个类型。哎,就是这个。叫延迟消息的类型。也就意味着你再创建一个交换机,这个交换机必须是延迟类型。只要你是延迟类型,那么它就会延迟消息。所以延迟的位置是在交换机的位置。好,我们来看一下。写代码需要几步呢?需要散步。第一步,你要写写一个配置文件类代码。将这三个声明出来。准确来说是几个呢?三个,一个是交换机声明,一个是队列声明,同时还要将交换机与队列之间进行绑定来绑定你在声明交换机时一定要注意交换机的类型必须是我们的延迟类型,哎,也就是。
02:01
页面上这个类型必须是这个这个类型。你只有是这个类型,我们才能进行延迟消息的一个发送。那接下来呢,我们就写一下吧。写之前呢,我们还是把它。定在这个屏幕上,对完之后呢,开始写我们的第一个代码。代码呢,怎么写,把它先挪走是吧,完我们在这个位置,哎,创建一个这个类是吧,这个类呢,我们名字已经想好了,你看名字叫延迟队列con,就这个类。右之键创建。好创建完之后呢,紧接着我们这里面要打个注解进行实例化,打个注解叫con飞哥对。完整里面进行。代码的书写。首先呢,我们来准备,你看按照这个情况啊,在准备。交换机。
03:02
对对列。当然了,除了队列以外还有谁呢?还有什么呀?还有ROK是吧,Roll。平K把这三个写一写,对完了这三个怎么写呢?我们来说一下啊,首先第一个。字符串类型的要写一个叫延迟队列,名字都已经写好了,必须叫这个名字。所以我们写个底。类ED,哎,完之后下面来一个叫对列困,再来一个名字。完了,这个名字呢。我们叫这个名啊,就叫他。后面呢,没有那个内幕,这个单词完中间也不是下划线是点。那为什么这点呢,这写着呢,你因为这写好了嘛。完之后再往下啊,这是交换,注意这不是交换机,这是队列对,接下来呢,咱们再把交换机挪下来。
04:01
复制一份啊。交换机的名字呢,我们打算叫延迟交换机的名字,也就意味着这啊只需要改一下叫。呃,交换机。完交换机的名字呢,叫延迟交换机,所以把这个位置哎粘一份给他,这就是延迟交换机。对吧,完再往下呢,是ROK啊再复制一份。柔ing k呢,这相当于这个位置去掉啊,这个位置呢叫柔汀。下划线K。完了,名字呢,叫延迟柔。听。名字一定要跟我们这一样啊,就ROK啊,好像是虽然说报波浪线了吧,是吧,但是呢,名字并没有写错。对,没写错啊,所以呢,把它们大写啊大写。好了,完成。好了,把这几个名字写好之后呢,剩下的任务就是开始进行声明。
05:05
声明第一个声明交换机。这个交换机是最不好声明的,所以把它写一下啊。声明一下,Public来一个叫交换机是吧,这个交换机。有这么几个交换机啊,一个叫。直接交换机。对吧,也有。主题交换机,对,也有扇出交换机有没有有啊。对,删除交换机,但是本次这几个都不对,为什么不对呢?因为本次的类型呢,是一个比较新颖的类型啊。这个不是直接,不是扇出,不是头部,也不是主题,是第五个,那么第五个怎么办呢?你只能写一个自定义交换机,因为第五个是刚刚新出来的,所以写叫。自定义交换机对。那么自定义交换机我们写一下啊,交换机的名字叫赖延迟ED是吧,完了叫交。
06:08
换极括号。那自定义交换机怎么办呢?这么写啊,首先return又一个对又一个。自定义。交换机。交换机的构造器里呢,要求你填这么几个参数,咱们去看一下,填这么多这么多。这么多参数。我们来一起看一下。点进去吧。首先呢,让你填交换机的名字,对完了再填交换机的类型。再问你交换机是否需要持久化,再问你呢,交换机是否需要自动删除完,最后交换机还得有参数。是这样吧,所以我们写一下啊,这个参数还挺多的啊,第一个。这些第一个。
07:00
交换机的。名称。那么交换机的名称不用想,它上面不有吗?是吧?把交换机的名称。田里。完了第二个。交换机的类型。交换机的。类型,那交换机什么类型啊。交换机的类型在这儿呢,刚刚安装完插件,这不出来了吗?在这个就是新的交换机的类型,所以你写一下。类型呢,我们是一个别写错啊,就是差。Gone。Lie ED啊,一定要在ED杠。什么message就它,哎,这是类型,第三个呢,换个行啊,第三个是什么。第三个是。是否需要持久化是吧?呃,是否需要。持久化。完了呢,我们需要的话呢,就写处对第四个呢。
08:01
是否需要自动删除是吧?是否需要?自动删除,那我们肯定不希望自动删除。完了再往下。还有最后一个是参数对不对。第五个这个是其他的参数,那其他的参数这个呢,我们照抄一下啊,又是曾经的这么一个map。由于本次自定义类型呢,你需要定义一些参数。完了之后把这个参数填到里面去,完这个参数的里面对你就可以放。一个参数什么呀,就是。类型对。延迟类型啊。延迟类型什么类型呢?就是直接类型啊。就这样啊,这就是我们的一个延延迟,首先来说这是一个声明交换机是吧,哎,基于。
09:06
插件。的这么一个交换机,就是这么定义的。定义完它之后呢,你再把其他的定义定义啊,例如定义一个,再声明一个队列。Public。队列当中的谁是队列,它是队列是吧,完了之后呢,你再来一个困。对立。队列这名字我们就叫延迟队列了是吧?叫延迟ED啊,Queen队列啊,括号。完了呢,自己再new一个,或者自己再构建一个都可以啊,你例如自己return。直接new一个叫困就可以完了,名字呢,要求写在构造器上,你就把你的名字。写在这儿。完了,紧接着再将他们两个进行绑定是吧,之后呢,再进行啊绑定。他叫来一个B。
10:01
完了public完了呢,Bonding,对,完了再进行绑。那么我们绑的时候这么的吧,叫延迟队列吧,就叫延迟。队列帮丁绑到延迟交换机上。就这意思。括号。完了,你的注入方式一如既往啊,就像原来一样是吧,你通过这个叫呃,这个。这个注解是吧,完了呢,名字方面呢,就叫什么名,当你没有自定义名的时候,其实就是方法名。方法名就是它默认的自定义名称,所以你把方法名呃弄过来。完了,再来一个叫queen。完了再把方法名粘过来。这就是一个就出来了呗,完之后你把它拿下来,完之后呢,再逗号复制一份。再把交换机的名字粘过来。
11:00
对,完了交换机叫自定义交换机吧,对,自定义customer交换机。完之后呢,你在在这儿用一个叫bonding build build是点上绑定。这个延迟队列。哪儿呢,交换机上。完之后再加上柔定K。柔钉K的上方啊在这呢是吧,定义一下。沾一下。好了吗?他还差一点是吧,再调一个。构建啊,这是一个构建方法。所以到此就完成了,完成谁了呢?就完成这张图了呗。相当于我们定义了交换机,又定定义了一个,定义了一个队列完就咱他两个这怎么的再进行捆绑,对,结束了,完了,这里面重点说一说交换机是吧,交换机比较复杂,在声明交换机的时候要注明它的类型以及它的延迟类型。
12:03
对吧,它是一个延迟,你看是一个延迟消息,而它延迟延迟的类型是。直接类型。对,因为为什么是直接呢?因为它不是路由,它是一个柔钉,K是一个固定的值。所以是一个直接类型。好了,到此。就写完了。这个定义啊。
我来说两句