00:00
接下来我们来测试一下秒杀商品的上架功能,来到我们这个定时任务,那们这个定时任务呢,只要一启动它就会查到我们最近三天要秒杀的商品,我们可以通过后台管理系统,我们在这呢启动了后台管理系统,那通过页面呢录一些商品,当然我这个为了快期天我也可以直接来改数据库,因为要查最近三天,那么现在呢,21号把这两个时间呢,我们来稍微改一下,那我现在呢,把这个就来改成22号的,我们把四号改成呢是22号,然后呢这一课也改成是22号,那就22号凌晨零点到我们这个两点,然后呢,我们这个我们改成21号,因为我们这个秒杀任务呢,也能查到我们这个今天的这个数据,所以我现在来改成一个21号的,我们来点一个确定,我们在这来改一个21号的确定,那这一块呢,也来改一个21号的,好,这一块我们也来改一个21号的,来测试我们这个秒杀商品的上架。
01:00
功能,那这两个数据一改以后,那这两个数据关联的这个商品,我们在这儿呢,也都有秒杀的价格以及数量都有来测试上架,这个上架呢,我们就不等凌晨三点了,我们现在呢,就让他直接来执行一遍,那任意小时,然后呢,任一分钟,这个整点呢,每分钟上来执行一次,我们就来打一下日志log,点一个info们上架,上架咱们这个秒杀的商品信息,好,然后我们现在来启动一下我们的这个项目,秒杀项目,我们就让它整点来启动上一次。来看他能不能上架来我们的这些商品信息,同时我们要参照我们的red里边上架的这些数据,只要秒杀商品的信息上架了,我们这些数据呢,就在red里边也有,那我们缓存里边只要有数据,我们就可以来加速访问,好,我们现在在这儿来准备一下鼓励mail,这以前呢是购物车里面的数据,我现在就来等待上架,来参照一下我们的时间,现在还不是整点整,那正好启动起来,那就整点了。
02:03
啊,稍等一下。好,我们先来看一下这一块,NAS的这个异常,我们就先不用管了,然后我们这个服务呢,现在来启动成功,这是hello的定时任务,我们就不管这个定时任务了,你现在主要来看一下秒杀商品的上架,好五秒,我们来看一下我们的这个整点的上架秒杀商品信息,好,这个定时任务呢,已经执行了,执行完了以后呢,我们发现这一块呢,有一个404,那404因为我们调了远程服务,第一次呢调老是失败很正常,然后我们再来看一下这一块呢,可能就失败了,我们这个没上架来,那么就等下一分钟我们来继续来上架来,稍等一下,好,我们这个马上呢到整点信息,我们来看一下我们的控制台。我们将要呢,上架我们的秒杀商品,稍等一下,好又来上架,这上架呢,说这个404404说reading,那读取我们这一块的数据来到这儿,来到这儿呢,那就是读取这儿出现了问题,我们就给这儿呢打一个断点来看读取这儿出现了什么问题,那这是由于我们这个优惠服务我们没有重启,你们编写了这个优惠服务的代码功能,现在就给它重启一下,重启完了以后呢,我们就可以来查到这个数据了,我们再来稍等一下,好,我们现在稍等我们这个优惠服务呢启动完成,来看一下我们这个秒杀的这一块,然后我们就下一次再来上架我们这个商品,来看一下这一次的调用。
03:25
因为这个第一次调用呢,远程失败可能很正常,来稍等一下。好,上架我们这个商品信息,好,我们稍等呢,现在出现了这个浪不能转成string的异常,那就来到这儿,来到我们这个这儿,他说就是我们这个信息与我们整个的red操作,我们都是string redlt,所以呢,我们要把这个long类型的数据转成string,我们来作为K再去保存,好,我们现在来重新来启动一下。那这一块的bug呢,我们就来这么来修改一下,而且呢,这儿还有一个其他问题,我们先来启动再说,好,那现在这个服务呢,启动成功来等待我们秒杀上架的功能,现在这个时间呢,是59,正好我们这个上架功能开始处理好,处理成功以后呢,发现没有报任何错误,那就处理成功了,来到我们这个red里边来刷新一下,我们来看一下秒杀上架的这些信息session,那现在呢,有两场这个信息,这个时间点呢,我们在这都存起来了,一个是504,一个是540,然后呢,这两个商品分别是七号,诶们发现这个七号的这个商品上架了两遍,然后这个呃八也是上架了两遍,这不是七号八号,我们在这呢,每一个这个信息应该保存的是我们当前要秒杀的这个商品的IDSQID,但我们这个七八呢,保存成了我们这个关联的SQ relation这个ID了,所以我们这一块呢,保存错了,这是第一个问题,第二个问题,那再来看一下,来重新。
04:54
刷新一下这一块的数据们稍等,下次的这个上架功能,我们这个56分,我们如果再来一次上架,我们来看一下会是啥效果,来刷新一下,发现呢,又多了一个七一,因为我们这个是一个list,我们给里边保存数据,所以又多一个,因为我们这个秒杀呢,想下一个定时任务一启动又呢给我们执行了,所秒杀的这个上架功能应该做成一个密等呢,上过了我们就不用再上了,所以这是我们要做的第一件事情,图do这个密等性处理,我们这个上架过了以后呢,就不用再上架了,这是第一个问题,第二个我们这一块的漆,我们来改一下,那现在上架的这个商品啊,我们来保存商品的这个活动信息,这个活动信息我们在这儿收集的是我们这个关联的SQID,不是这个关联记录的ID,而是它的SQID,点一个get SQ ID,好把这个呢变一下来重新启动一下我们的秒杀服务,来重新来清空一下我们。
05:54
Credit里边跟秒杀相关的这一块数据,好我们来全部删除,删除完成以后,我们来刷新一下我们这一块的操作,好我们来稍等我们这个服务启动,好,那现在这个服务呢,启动成功,那这个时间是20秒,我们得等它这个上架了才算。
06:11
那上架了以后呢,我们这一块数据就会有相应的内容,那么就来稍等一下,好,那们现在这个商品秒杀上架功能,好,现在呢,这个功能已经处理了,那处理成功以后,我们来看一下red,主要来看我们上架的这个数据,那么这个sessions,那就是我们里边的信息,这个信息里边我们相当于这一场我们这个秒杀是二号商品,那下一场这个也是二号商品们里边存的数据,这个K的七八,这个七八呢是当前我们这个秒杀的这个信息,当前场次信息,这个场次信息里边SQ英。它的这一块信息呢,也有,那这块呢,K又存错了,那这个呢是保存的是squ的ID,所以我们在这再来修改一下,来确认一下,那要保存的这个场次信息,它是SQID来找一下,那相当于S信息的这个存储,这是呢来存信号量信息来看一下我们上边,那现在呢,相当于要存这个SQ的这个数据缓存,好它这一块的数据缓存,我们在这拿到options来进行操作,那给里边呢,Put put这个SQVO不是这个ID,而是我们这个SQ的ID,那们是当前这个商品,它的这个详细信息,这一块呢,我们应该重新来修改一下,那这一块一修改以后呢,我们这个数据肯定就对了,那其他的就不看了,这两个商品的ID最终一修改,那当前秒杀商品的详细信息,我们再来在这儿确认一下,我们看一下这个详细信息数据这一块呢,有当前商品的秒杀结束时间,包括它的开始时间,在下边也有。
07:45
还有SQ的info信息,这个info信息呢,主要有图片商品的标题,那这一块也有,还有它的开始时间,还有我们的这个令牌,我们来看一下这个随机令牌,这块呢也有,然后呢,接下来秒杀的这个库存信号量,每一个呢都是来用令牌来显示的,来看这个信号量呢,其实就是设置一个这个值,一个是100,一个是二,只要我们这个有数据以后,那么接下来每过来一个信号,它这个值呢,就会来减一个,那么这一块呢就处理完了,那么接下来最重要的就是密等性处理,那么只要上架一个,我们会发现呢,这都是给后边追加,那么就应该我们当前这个场次呢,已经上架完了,我们就应该不来再处理了,所以们现在呢就来停一下我们这个服务,我们来做一下密等性处理,把这一块来停掉,我们这个测试呢就成功了,我们的信号量,那就是商品的ID没问题,包括我们的保存的每一个SQID,它的详细信息也都有,以及我们这一块要用的SQ的各种。
08:45
能缓存数据,包括当前场次的所有信息,比如我们这个当前次到底哪些商品参加秒杀,我们这一块呢,数据都有,那么下一节课呢,就把这个密等性处理一下就行了。
我来说两句