库存数据的并发控制系统及方法

文档序号:9327626阅读:625来源:国知局
库存数据的并发控制系统及方法
【技术领域】
[0001]本发明涉及通信领域,尤其涉及库存数据的并发控制系统及方法。
【背景技术】
[0002]目前电商业务有促销活动频度高,用户并发波动大的特点。传统的电商体系架构只能通过增加应用服务器这种横向扩展的方式来满足巨大的用户访问量,但是为了临时活动进行横向扩展,需极大的硬件和运维成本,而在并发比较平缓时又造成资源的浪费,很难调和。
[0003]另外,在注入秒杀等活动期间由于具有诸如商品种类少、短时间访问量巨大等特点,进而会对记录商品库存的数据库操作造成巨大的压力,尤其是过大的秒杀并发请求会对数据库的个别商品记录上产生大量操作锁,而由于数据库的处理能力有限,不仅会降低对用户下单的响应时间,甚至还能造成系统短时间瘫痪,使得用户体验大大降低,不利用电商业务的推广应用。

【发明内容】

[0004]为了解决上述问题,本发明设计了一种库存数据的并发控制系统及方法,可应用于高并发数据请求的数据交互操作中,以有效的提高库存数据系统的承压能力。
[0005]为了实现上述目的,本发明设计了一种库存数据的并发控制系统,可应用于用户终端对第一数据库中存储的库存数据进行扣减的操作中,所述系统包括:
[0006]接受请求单元,与所述用户终端通讯连接,以接收所述用户终端发送的库存扣减请求;
[0007]处理单元,与所述接受请求单元通讯连接,以根据所述库存扣减请求对所述第一数据库中存储的所述库存数据进行扣减操作;
[0008]处理结果单元,分别与所述处理单元和所述接受请求单元通讯连接;以及
[0009]所述处理单元将所述扣减操作的结果信息存储至所述处理结果单元,所述接受请求单元将所述处理结果单元反馈的所述结果信息发送至所述用户终端。
[0010]进一步改进技术方案,所述系统还包括:
[0011]第二数据库,分别与所述接受请求单元和所述处理单元通讯连接,以用于存储库存扣减请求;以及
[0012]所述接受请求单元根据接收的所述库存扣减请求发送通知信息至所述处理单元,所述处理单元根据接收的所述通知信息对所述第二数据库中存储的所述库存扣减请求进行合并;并且
[0013]所述处理单元根据合并的所述库存扣减请求对所述第一数据库中存储的所述库存数据进行所述扣减操作。
[0014]进一步改进技术方案,所述系统还包括:
[0015]所述接受请求单元对接收的所述库存扣减请求进行分类处理后,将分类处理的所述库存扣减请求存储至所述第二数据库;以及
[0016]所述处理单元对分类处理后的所述库存扣减请求进行合并,并根据合并的所述库存扣减请求进行所述扣减操作。
[0017]进一步改进技术方案,所述系统还包括:
[0018]服务器、应用层模块和服务层模块,且所述接受请求单元、所述处理单元、所述处理结果单元、所述第一数据库和所述第二数据库均设置在所述服务层模块中;以及
[0019]所述用户终端依次通过所述服务器、所述应用层模块与所述接受
[0020]请求单元通讯连接。
[0021]进一步改进技术方案,所述系统中的所述处理单元包括:
[0022]第一判断模块,分别与所述接受请求单元和所述第一数据库通讯连接,以用于根据接收的所述通知信息判断所述第一数据库中是否能够满足所述扣减请求;以及
[0023]所述处理单元根据所述第一判断模块输出的第一判断信息进行所述扣减操作或反馈失败判断信息至所述用户终端。
[0024]进一步改进技术方案,所述系统中的所述处理单元包括:
[0025]第二判断模块,分别与所述接受请求单元和所述第二数据库,以用于根据接收的所述通知信息判断所述第二数据库中是否存在待处理所述扣减请求;以及
[0026]所述处理单元根据所述第二判断模块输出的第二判断信息对所述待处理扣减请求合并后进行所述扣减操作或停止继续进行所述扣减操作。
[0027]进一步改进技术方案,所述系统中的所述接受请求单元包括:
[0028]第三判断模块,分别与所述处理结果单元和所述用户终端连接,以用于判断所述处理结果单元中是否反馈所述扣减操作的结果信息至所述接受请求单元;以及
[0029]所述接受请求单元根据所述第三判断模块输出的第三判断信息通知所述用户终端所述并发控制系统异常或将所述扣减操作的结果信息发送至所述用户终端。
[0030]本发明还设计了一种库存数据的并发控制方法,可基于上述任意一项所述的并发控制系统的基础上,以利用用户终端对第一数据库中存储的库存数据进行扣减的操作中,所述方法包括:
[0031]所述用户终端发送库存扣减请求至所述接受请求单元,所述接受请求单元接收所述用户终端发送的库存扣减请求;
[0032]所述处理单元根据所述库存扣减请求对所述第一数据库中存储的所述库存数据进行扣减操作;
[0033]所述处理单元将所述扣减操作的结果信息存储至所述处理结果单元,所述接受请求单元将所述处理结果单元反馈的所述结果信息发送至所述用户终端。
[0034]进一步改进技术方案,所述方法还包括:
[0035]所述用户终端向所述接受请求单元发送所述库存扣减请求,所述接受请求单元将所述库存扣减请求存储至所述第二数据库,所述接受请求单元根据接收的所述库存扣减请求发送通知信息至所述处理单元,所述处理单元根据接收的所述通知信息对所述第二数据库中存储的所述库存扣减请求进行合并;并且
[0036]所述处理单元根据合并的所述库存扣减请求对所述第一数据库中存储的所述库存数据进行所述扣减操作。
[0037]进一步改进技术方案,所述方法还包括:
[0038]所述用户终端向所述接受请求单元发送库存扣减请求,所述接受请求单元对接收的所述库存扣减请求进行分类处理后,将分类处理的所述库存扣减请求存储至所述第二数据库;以及
[0039]所述处理单元对分类处理后的所述库存扣减请求进行合并,并根据合并的所述库存扣减请求对所述第一数据库中存储的所述库存数据进行所述扣减操作。
[0040]进一步改进技术方案,所述方法还包括:
[0041]所述用户终端依次通过所述服务器、所述应用层模块发送所述库存扣减请求至所述接受请求单元。
[0042]进一步改进技术方案,所述方法中包括:
[0043]所述处理单元接收所述通知信息,并合并的所述库存扣减请求;以及
[0044]所述处理单元判断所述第一数据库是否能够满足所述库存扣减请求,生成所述第一判断信息;
[0045]当所述第一数据库能够满足所述库存扣减请求时,生成成功判断信息,所述处理单元根据所述成功判断信息对所述第一数据库进行扣减操作,否则生成失败判断信息,所述处理单元反馈失败判断信息至所述用户终端。
[0046]进一步改进技术方案,所述方法中包括:
[0047]所述接受请求单元发送所述通知信息至所述处理单元,所述处理单元根据接收的所述通知信息判断所述第二数据库中是否存在所述待处理所述扣减请求,生成所述第二判断信息;以及
[0048]当所述第二数据库中存在所述待处理所述扣减请求时,所述处理单元生成成功判断信息,所述处理单元根据所述成功判断信息对所述待处理扣减请求合并后进行所述扣减操作;否则生成失败判断信息,所述处理单元停止继续进行所述扣减操作。
[0049]进一步改进技术方案,所述方法中包括:
[0050]所述处理单元将所述扣减操作的结果信息存储至所述处理结果单元,所述接受请求单元按照预设时间定时询问所述处理结果单元所述扣减操作的结果信息;以及
[0051]当所述处理结果单元中反馈所述扣减操作的结果信息至所述接受请求单元,则生成所述成功判断信息,所述接受请求单元将所述扣减操作的结果信息发送至所述用户终端,否则,生成所述失败判断信息,所述接受请求单元通知所述用户终端所述并发控制系统异常。
[0052]与现有技术相比较,本发明的有益效果是:
[0053]本申请中记载的技术方案有别于传统电商解决方案的处理高并发数据请求的系统,可应用于请求库存进行扣减服务的操作中,主要是通过设置的接受请求单元来负责接受请求,并发送通知至处理单元,以利用该处理单元对第一库存数据库进行扣减操作后并将扣减结果信息存储至处理结果单元,并在接受请求单元向处理结果单元询问处理结果时将处理结果信息反馈至接受请求单元,进而可使得应用本申请技术方案的高并发数据请求系统能够在保留横向扩展服务器能力的基础上,最大限度减少在诸如商品扣减等操作时进行的高并发操作对数据库带来不利影响,即利用批量的库存扣减操作来减缓高并发期间数据库的压力,以提升系统的性能及承压能力。
【附图说明】
[0054]图1为本发明实施例一的库存数据的并发控制系统的结构示意图;
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1