A method for dealing with high concurrent secondkill activity is as follows: step 1: query the data of high concurrent system when initializing, and load it into Redis cache; step 2: selectively respond to concurrent secondkill request; step 3: pre-reduce inventory, reduce the data of secondkill activity in Redis cache when high concurrent system receives secondkill request Step 4: High concurrent system determines whether the product has succeeded in killing seconds, and if not, it returns information that cannot be repeated; if not, it enters the Rabbit MQ message queue, orders asynchronously, and immediately returns to the queue of killing seconds; Step 5: Secondary killing request. Out of the RabbitMQ message queue, generate merchandise orders and update the secondkill activity data. The invention reduces the access to the database, thereby reducing the pressure of the database and realizing the support of the system for high concurrency.
【技术实现步骤摘要】
一种处理高并发秒杀活动的方法
本专利技术涉及计算机技术及软件领域,尤其涉及一种处理高并发秒杀活动的方法。
技术介绍
高并发是目前电商网站常见的营销手段,当大量用户同一时间同时进行抢购时,会导致网站瞬间的并发量非常大,进而使得业务逻辑非常简单的秒杀活动在技术层面上面临着巨大的考验。而最大的瓶颈在于数据库的IO操作,数据处理并发的能力有限,在应对大量并发请求时,数据库无法支撑巨大的压力。
技术实现思路
本专利技术的目的在于针对
技术介绍
中的缺陷,提出一种处理高并发秒杀活动的方法,通过使用redis缓存和RabbitMQ消息队列,来减少对数据库的访问,从而减轻数据库的压力,实现系统对高并发的支持。为达此目的,本专利技术采用以下技术方案:一种处理高并发秒杀活动的方法,具体步骤如下:步骤一:在高并发系统进行初始化的时候,从数据库中查询出秒杀活动的数据,并加载到Redis缓存中;步骤二:进行内存标记,选择性响应秒杀请求并发;步骤三:预减库存,当高并发系统收到秒杀请求时,减少Redis缓存中秒杀活动的数据,当秒杀活动的数据量减少到0时,直接返回秒杀结束的信息;步骤四:高并发系统判断商品是否已经秒杀成功,若是,则返回不能重复秒杀的信息;若不是,则将秒杀请求进入RabbitMQ消息队列,进行异步下单,并立即返回秒杀活动的排队队列中;步骤五:秒杀请求从RabbitMQ消息队列中出来,并生成商品订单并更新秒杀活动的数据。优选的,在所述步骤一中,高并发系统初始化时,将秒杀活动的数据,加载到Redis缓存中,秒杀活动数据包括但不限于秒杀商品的库存数据,秒杀请求直接访问Redis缓存但不访 ...
【技术保护点】
1.一种处理高并发秒杀活动的方法,其特征在于:具体步骤如下:步骤一:在高并发系统进行初始化的时候,从数据库中查询出秒杀活动的数据,并加载到Redis缓存中;步骤二:进行内存标记,选择性响应秒杀请求并发;步骤三:预减库存,当高并发系统收到秒杀请求时,减少Redis缓存中秒杀活动的数据,当秒杀活动的数据量减少到0时,直接返回秒杀结束的信息;步骤四:高并发系统判断商品是否已经秒杀成功,若是,则返回不能重复秒杀的信息;若不是,则将秒杀请求进入RabbitMQ消息队列,进行异步下单,并立即返回秒杀活动的排队队列中;步骤五:秒杀请求从RabbitMQ消息队列中出来,并生成商品订单并更新秒杀活动的数据。
【技术特征摘要】
1.一种处理高并发秒杀活动的方法,其特征在于:具体步骤如下:步骤一:在高并发系统进行初始化的时候,从数据库中查询出秒杀活动的数据,并加载到Redis缓存中;步骤二:进行内存标记,选择性响应秒杀请求并发;步骤三:预减库存,当高并发系统收到秒杀请求时,减少Redis缓存中秒杀活动的数据,当秒杀活动的数据量减少到0时,直接返回秒杀结束的信息;步骤四:高并发系统判断商品是否已经秒杀成功,若是,则返回不能重复秒杀的信息;若不是,则将秒杀请求进入RabbitMQ消息队列,进行异步下单,并立即返回秒杀活动的排队队列中;步骤五:秒杀请求从RabbitMQ消息队列中出来,并生成商品订单并更新秒杀活动的数据。2.根据权利要求1所述一种处理高并发秒杀活动的方法,其特征在于:在所述步骤一中,高并发系统初始化时,将秒杀活动的数据,加载到Redis缓存中,秒杀活动数据包括但不限于秒杀商品...
【专利技术属性】
技术研发人员:黄伟基,吴金军,王长江,曹景成,陈伟杰,黄俊杰,
申请(专利权)人:广东鸭梨科技集团股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。