基于缓存的库存管理方法以及装置制造方法及图纸

技术编号:22330058 阅读:41 留言:0更新日期:2019-10-19 12:16
本申请提供基于缓存的库存管理方法以及装置,其中所述基于缓存的库存管理方法包括:获取热点商品的库存扣减请求中携带的热点商品的库存扣减数量;根据所述库存扣减数量,通过对缓存中热点商品的缓存库存进行加锁的方式对缓存库存进行扣减;在扣减成功的情况下,在数据库中插入热点商品的库存扣减记录;对扣减周期内插入的库存扣减记录中包含的热点商品的库存扣减数量进行合并,获得热点商品的库存扣减总数量;根据库存扣减总数量,对数据库中热点商品的库存进行扣减。本申请提供基于缓存的库存管理方法,通过将对数据库中热点商品的库存的高频扣减操作转化为优先对缓存中热点商品的缓存库存进行扣减,提升了对热点商品库存的扣减效率。

Storage management method and device based on cache

【技术实现步骤摘要】
基于缓存的库存管理方法以及装置
本申请涉及数据处理
,特别涉及一种基于缓存的库存管理方法。本申请同时涉及一种基于缓存的库存管理装置,一种计算设备,以及一种计算机可读存储介质。
技术介绍
随着互联网业务的不断发展,通过互联网在电商平台购物的人群不断增加,当电商平台举办限时抢购活动时,某些单价比平时更给力、更具吸引力的热卖商品会引发大量用户参与抢购,这必然会产生大量针对数据库中热卖商品的库存的并发更新操作,对数据库的性能压力非常大。目前,有不少通过提升数据库性能的方式来应对热卖商品的库存的高并发更新操作,例如:使用多台数据库分担这些更新操作,增加数据库硬件性能等方法来减轻数据库的压力。然而对数据库进行读写的速度本身存在瓶颈,更何况是在大量用户同时对数据库的同一条数据进行读写的情况下,会造成库存更新缓慢,用户等待等不好的影响,并且有可能出现超卖的现象,非常不利于业务的发展。
技术实现思路
有鉴于此,本申请提供了一种基于缓存的库存管理方法。本申请同时涉及一种基于缓存的库存管理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。根据本申请实施例的第一方面,提供了一种基于缓存的库存管理方法,包括:获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量;根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减;在扣减成功的情况下,在数据库中插入所述热点商品的库存扣减记录;对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量;根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减。可选的,所述获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量步骤执行之前,还包括:获取针对商品的库存进行扣减的库存扣减请求;判断所述商品在所述数据库中的热点状态字段记录的热点状态信息是否为热点开启状态;若是,将所述商品作为热点商品,并执行所述获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量步骤;若否,判断预设时间区间内针对所述商品的库存进行扣减的库存扣减请求的请求数目是否大于库存请求阈值;若大于,将所述商品确定为热点商品;若不大于,将所述商品确定为非热点商品。可选的,所述将所述商品确定为热点商品步骤执行之后,还包括:将所述热点商品在数据库中的热点状态字段记录的热点状态信息更新为热点开启状态;将所述热点商品的库存更新至所述缓存。可选的,所述将所述商品确定为非热点商品步骤执行之后,还包括:获取所述非热点商品的库存扣减请求中携带的所述非热点商品的库存扣减数量;根据所述库存扣减数量,对所述数据库中所述非热点商品的库存进行扣减。可选的,所述获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量步骤执行之后,所述根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减步骤执行之前,还包括:判断所述库存扣减数量是否小于所述缓存中所述热点商品的缓存库存数量;若是,执行所述根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减步骤;若否,输出扣减失败的提示。可选的,所述对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量步骤执行之后,所述根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减步骤执行之前,还包括:判断所述库存扣减总数量是否小于所述数据库中所述热点商品的库存数量;若是,执行所述根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减步骤;若否,输出扣减失败的提示。可选的,所述库存扣减请求的请求状态包括下述至少一项:待扣减状态、已完成缓存扣减状态、已完成记录插入状态、扣减成功状态、扣减中止状态。可选的,所述在数据库中插入所述热点商品的库存扣减记录,包括:将所述请求状态从所述待扣减状态更新为所述已完成缓存扣减状态;在所述数据库中插入所述热点商品的库存扣减记录;将所述请求状态从所述已完成缓存扣减状态更新为所述已完成记录插入状态。可选的,所述根据所述库存扣减总数量,对数据库中所述热点商品的库存进行扣减步骤执行之后,还包括:在扣减成功的情况下,将所述请求状态更新为所述扣减成功状态;在扣减失败的情况下,将所述请求状态更新为所述扣减中止状态,并输出扣减失败的提示。可选的,所述根据所述库存扣减总数量,对数据库中所述热点商品的库存进行扣减步骤执行之后,还包括:在所述缓存中设置所述热点商品的缓存库存数量为0;将所述热点商品对应的库存扣减记录中包含的所述热点商品的剩余库存扣减数量进行合并,获得所述热点商品的剩余库存扣减总数量;根据所述剩余库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减;将所述热点商品在所述数据库中的热点状态字段记录的热点状态信息从热点开启状态更新为热点关闭状态;在所述缓存中清除所述热点商品的库存。根据本申请实施例的第二方面,提供了一种基于缓存的库存管理装置,包括:获取扣减数量模块,被配置为获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量;缓存扣减模块,被配置为根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减;插入记录模块,被配置为在扣减成功的情况下,在数据库中插入所述热点商品的库存扣减记录;获得扣减总数量模块,被配置为对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量;数据库扣减模块,被配置为根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减。根据本申请实施例的第三方面,提供了一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量;根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减;在扣减成功的情况下,在数据库中插入所述热点商品的库存扣减记录;对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量;根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减。根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现任意一项所述基于缓存的库存管理方法的步骤。与现有技术相比,本申请具有如下优点:本申请提供一种基于缓存的库存管理方法,包括:获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量;根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减;在扣减成功的情况下,在数据库中插入所述热点商品的库存扣减记录;对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量;根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减。本申请提供的基于缓存的库存管理方法,通过将热点商品的库存存储于缓存,将对数据库中热点商品的库存的高频扣减操作转化为优先本文档来自技高网...

【技术保护点】
1.一种基于缓存的库存管理方法,其特征在于,包括:获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量;根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减;在扣减成功的情况下,在数据库中插入所述热点商品的库存扣减记录;对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量;根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减。

【技术特征摘要】
1.一种基于缓存的库存管理方法,其特征在于,包括:获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量;根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减;在扣减成功的情况下,在数据库中插入所述热点商品的库存扣减记录;对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量;根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减。2.根据权利要求1所述的基于缓存的库存管理方法,其特征在于,所述获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量步骤执行之前,还包括:获取针对商品的库存进行扣减的库存扣减请求;判断所述商品在所述数据库中的热点状态字段记录的热点状态信息是否为热点开启状态;若是,将所述商品作为热点商品,并执行所述获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量步骤;若否,判断预设时间区间内针对所述商品的库存进行扣减的库存扣减请求的请求数目是否大于库存请求阈值;若大于,将所述商品确定为热点商品;若不大于,将所述商品确定为非热点商品。3.根据权利要求2所述的基于缓存的库存管理方法,其特征在于,所述将所述商品确定为热点商品步骤执行之后,还包括:将所述热点商品在数据库中的热点状态字段记录的热点状态信息更新为热点开启状态;将所述热点商品的库存更新至所述缓存。4.根据权利要求2所述的基于缓存的库存管理方法,其特征在于,所述将所述商品确定为非热点商品步骤执行之后,还包括:获取所述非热点商品的库存扣减请求中携带的所述非热点商品的库存扣减数量;根据所述库存扣减数量,对所述数据库中所述非热点商品的库存进行扣减。5.根据权利要求1所述的基于缓存的库存管理方法,其特征在于,所述获取热点商品的库存扣减请求中携带的所述热点商品的库存扣减数量步骤执行之后,所述根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减步骤执行之前,还包括:判断所述库存扣减数量是否小于所述缓存中所述热点商品的缓存库存数量;若是,执行所述根据所述库存扣减数量,通过对缓存中所述热点商品的缓存库存进行加锁的方式对所述缓存库存进行扣减步骤;若否,输出扣减失败的提示。6.根据权利要求1所述的基于缓存的库存管理方法,其特征在于,所述对扣减周期内插入的库存扣减记录中包含的所述热点商品的库存扣减数量进行合并,获得所述热点商品的库存扣减总数量步骤执行之后,所述根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减步骤执行之前,还包括:判断所述库存扣减总数量是否小于所述数据库中所述热点商品的库存数量;若是,执行所述根据所述库存扣减总数量,对所述数据库中所述热点商品的库存进行扣减步骤;若否,输出扣减失败的提示。7.根据权利要求1所述的基于缓存的库存管理方法,其特征在于,所述库存扣减请求的请求状态包括下述至少一项:待扣减状态、已完成缓存扣减状态、已完成记录插入状态、扣减成功状态、扣减中止状态。8.根据权利要求7所述的基于...

【专利技术属性】
技术研发人员:王世杰
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1