CN108182617A - 一种小型高并发扣减库存下单订单方法 - Google Patents

一种小型高并发扣减库存下单订单方法 Download PDF

Info

Publication number
CN108182617A
CN108182617A CN201711220801.9A CN201711220801A CN108182617A CN 108182617 A CN108182617 A CN 108182617A CN 201711220801 A CN201711220801 A CN 201711220801A CN 108182617 A CN108182617 A CN 108182617A
Authority
CN
China
Prior art keywords
virtual
inventory
pipe
pond
lock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201711220801.9A
Other languages
English (en)
Other versions
CN108182617B (zh
Inventor
刘经永
张学会
徐唤春
裴大鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Commercial Software Co Ltd
Original Assignee
Commercial Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Commercial Software Co Ltd filed Critical Commercial Software Co Ltd
Priority to CN201711220801.9A priority Critical patent/CN108182617B/zh
Publication of CN108182617A publication Critical patent/CN108182617A/zh
Application granted granted Critical
Publication of CN108182617B publication Critical patent/CN108182617B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种小型高并发扣减库存下单订单方法,属于订单处理技术领域,分别建立虚拟管道、虚拟外部锁、虚拟管道表和虚拟库存池;每个货品对应多个虚拟管道和多个虚拟库存池,多个虚拟管道和多个虚拟库存池一一对应,虚拟库存池放在MYSQL数据表中;在库存扣减高并发的情况下,发起的每件事务先在虚拟管道表中查找当前可用虚拟管道,并按顺序找到非LOCK的虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行库存修改;当该虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道进行多库存池扣减。本发明采用外部锁机制与多个库存池分摊并发,能线性提升并发量,实现较为方便。

Description

一种小型高并发扣减库存下单订单方法
技术领域
本发明涉及一种扣减库存下单订单方法,特别是涉及一种小型高并发扣减库存下单订单方法,属于订单处理技术领域。
背景技术
近年来电子商务在我国蓬勃发展,人们越来越习惯于网上购物。随着电子信息的发展,基于移动互联网的订单服务得到了广泛地使用。目前,开源PHP+MYSQL电商系统的下单和库存扣减的实现原理几乎是相同的,即下单和扣减库存放在事务里执行,但该事务流程无法应对高并发下的库存扣减,在高并发下单场景下,多个用户创建了多个事务,同时修改一个商品的库存,而修改时MYSQL会建锁锁住,导致前一个事务没执行完,锁无法释放,后面的扣减库存都会失败。
发明内容
本发明的主要目的是为了提供一种小型高并发扣减库存下单订单方法,采用外部锁机制与多个库存池分摊并发,能线性提升并发量,实现较为方便。
本发明的目的可以通过采用如下技术方案达到:
一种小型高并发扣减库存下单订单方法,包括:
分别建立虚拟管道、虚拟外部锁、虚拟管道表和虚拟库存池;
每个货品对应多个虚拟管道和多个虚拟库存池,多个虚拟管道和多个虚拟库存池一一对应,虚拟库存池放在MYSQL数据表中;
在库存扣减高并发的情况下,发起的每件事务先在虚拟管道表中查找当前可用虚拟管道,并按顺序找到非LOCK的虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行库存修改;
当该虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道进行多库存池扣减。
进一步的,所述虚拟管道输送库存货品列表,所述虚拟外部锁在管道占用时,锁止虚拟管道;所述虚拟管道表存放货品的管道列表;所述虚拟库存池为含有需要的货品的库存。
进一步的,所述虚拟管道存放在内存中,虚拟管道表和管道列表也均存放在内存中。
进一步的,发起的每件事务进入虚拟管道时,会将该虚拟管道标识为LOCK状态,并记录LOCK状态的时间。
进一步的,在该虚拟管道处于LOCK状态时,该虚拟管道禁止使用。
进一步的,当事务结束后,虚拟管道标识解除,该虚拟管道可以使用。
进一步的,当虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行多库存池扣减。
本发明的有益技术效果:按照本发明的小型高并发扣减库存下单订单方法,本发明提供的小型高并发扣减库存下单订单方法,分别建立虚拟管道、虚拟外部锁、虚拟管道表和虚拟库存池;每个货品对应多个虚拟管道和多个虚拟库存池,多个虚拟管道和多个虚拟库存池一一对应,虚拟库存池放在MYSQL数据表中;在库存扣减高并发的情况下,发起的每件事务先在虚拟管道表中查找当前可用虚拟管道,并按顺序找到非LOCK的虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行库存修改;当该虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道进行多库存池扣减。采用外部锁机制与多个库存池分摊并发,能线性提升并发量,实现较为方便。
具体实施方式
为使本领域技术人员更加清楚和明确本发明的技术方案,下面结合实施例对本发明作进一步详细的描述,但本发明的实施方式不限于此。
本实施例提供的一种小型高并发扣减库存下单订单方法,包括:
分别建立虚拟管道、虚拟外部锁、虚拟管道表和虚拟库存池;
每个货品对应多个虚拟管道和多个虚拟库存池,多个虚拟管道和多个虚拟库存池一一对应,虚拟库存池放在MYSQL数据表中;
在库存扣减高并发的情况下,发起的每件事务先在虚拟管道表中查找当前可用虚拟管道,并按顺序找到非LOCK的虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行库存修改;
当该虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道进行多库存池扣减。
在一些实施例中,所述虚拟管道输送库存货品列表,所述虚拟外部锁在管道占用时,锁止虚拟管道;所述虚拟管道表存放货品的管道列表;所述虚拟库存池为含有需要的货品的库存。
在一些实施例中,所述虚拟管道存放在内存中,虚拟管道表和管道列表也均存放在内存中。
在一些实施例中,发起的每件事务进入虚拟管道时,会将该虚拟管道标识为LOCK状态,并记录LOCK状态的时间。
在一些实施例中,在该虚拟管道处于LOCK状态时,该虚拟管道禁止使用。
在一些实施例中,当事务结束后,虚拟管道标识解除,该虚拟管道可以使用。
在一些实施例中,当虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行多库存池扣减。
综上所述,在本实施例中,按照本实施例的小型高并发扣减库存下单订单方法,本实施例提供的小型高并发扣减库存下单订单方法,分别建立虚拟管道、虚拟外部锁、虚拟管道表和虚拟库存池;每个货品对应多个虚拟管道和多个虚拟库存池,多个虚拟管道和多个虚拟库存池一一对应,虚拟库存池放在MYSQL数据表中;在库存扣减高并发的情况下,发起的每件事务先在虚拟管道表中查找当前可用虚拟管道,并按顺序找到非LOCK的虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行库存修改;当该虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道进行多库存池扣减。采用外部锁机制与多个库存池分摊并发,能线性提升并发量,实现较为方便。
以上所述,仅为本发明进一步的实施例,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明所公开的范围内,根据本发明的技术方案及其构思加以等同替换或改变,都属于本发明的保护范围。

Claims (7)

1.一种小型高并发扣减库存下单订单方法,其特征在于,包括:
分别建立虚拟管道、虚拟外部锁、虚拟管道表和虚拟库存池;
每个货品对应多个虚拟管道和多个虚拟库存池,多个虚拟管道和多个虚拟库存池一一对应,虚拟库存池放在MYSQL数据表中;
在库存扣减高并发的情况下,发起的每件事务先在虚拟管道表中查找当前可用虚拟管道,并按顺序找到非LOCK的虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行库存修改;
当该虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道进行多库存池扣减。
2.根据权利要求1所述的一种小型高并发扣减库存下单订单方法,其特征在于,所述虚拟管道输送库存货品列表,所述虚拟外部锁在管道占用时,锁止虚拟管道;所述虚拟管道表存放货品的管道列表;所述虚拟库存池为含有需要的货品的库存。
3.根据权利要求2所述的一种小型高并发扣减库存下单订单方法,其特征在于,所述虚拟管道存放在内存中,虚拟管道表和管道列表也均存放在内存中。
4.根据权利要求1所述的一种小型高并发扣减库存下单订单方法,其特征在于,发起的每件事务进入虚拟管道时,会将该虚拟管道标识为LOCK状态,并记录LOCK状态的时间。
5.根据权利要求4所述的一种小型高并发扣减库存下单订单方法,其特征在于,在该虚拟管道处于LOCK状态时,该虚拟管道禁止使用。
6.根据权利要求5所述的一种小型高并发扣减库存下单订单方法,其特征在于,当事务结束后,虚拟管道标识解除,该虚拟管道可以使用。
7.根据权利要求1所述的一种小型高并发扣减库存下单订单方法,其特征在于,当虚拟库存池不可用时,自动占用其他可用虚拟管道,并LOCK住该虚拟管道,通过虚拟管道进入虚拟库存池中对应的库存数据,进行多库存池扣减。
CN201711220801.9A 2017-11-29 2017-11-29 一种小型高并发扣减库存下单订单方法 Active CN108182617B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711220801.9A CN108182617B (zh) 2017-11-29 2017-11-29 一种小型高并发扣减库存下单订单方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711220801.9A CN108182617B (zh) 2017-11-29 2017-11-29 一种小型高并发扣减库存下单订单方法

Publications (2)

Publication Number Publication Date
CN108182617A true CN108182617A (zh) 2018-06-19
CN108182617B CN108182617B (zh) 2021-06-25

Family

ID=62545457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711220801.9A Active CN108182617B (zh) 2017-11-29 2017-11-29 一种小型高并发扣减库存下单订单方法

Country Status (1)

Country Link
CN (1) CN108182617B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111898937A (zh) * 2020-07-02 2020-11-06 拉扎斯网络科技(上海)有限公司 库存管理方法、装置、设备和系统
CN113077220A (zh) * 2021-04-16 2021-07-06 北京京东拓先科技有限公司 用户请求的处理方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103426072A (zh) * 2013-07-16 2013-12-04 无限极(中国)有限公司 一种高并发竞争库存的订单处理系统及其处理方法
CN103914776A (zh) * 2013-01-08 2014-07-09 纽海信息技术(上海)有限公司 退单处理系统及方法
CN105046466A (zh) * 2015-06-29 2015-11-11 上海瀚之友信息技术服务有限公司 库存数据的并发控制系统及方法
CN106156975A (zh) * 2015-04-23 2016-11-23 阿里巴巴集团控股有限公司 业务对象的库存信息处理方法及装置
CN106204232A (zh) * 2016-07-18 2016-12-07 苏州华车网络科技有限公司 一种处理高并发交互数据请求的系统和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914776A (zh) * 2013-01-08 2014-07-09 纽海信息技术(上海)有限公司 退单处理系统及方法
CN103426072A (zh) * 2013-07-16 2013-12-04 无限极(中国)有限公司 一种高并发竞争库存的订单处理系统及其处理方法
CN106156975A (zh) * 2015-04-23 2016-11-23 阿里巴巴集团控股有限公司 业务对象的库存信息处理方法及装置
CN105046466A (zh) * 2015-06-29 2015-11-11 上海瀚之友信息技术服务有限公司 库存数据的并发控制系统及方法
CN106204232A (zh) * 2016-07-18 2016-12-07 苏州华车网络科技有限公司 一种处理高并发交互数据请求的系统和方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111898937A (zh) * 2020-07-02 2020-11-06 拉扎斯网络科技(上海)有限公司 库存管理方法、装置、设备和系统
CN111898937B (zh) * 2020-07-02 2024-03-01 拉扎斯网络科技(上海)有限公司 库存管理方法、装置、设备和系统
CN113077220A (zh) * 2021-04-16 2021-07-06 北京京东拓先科技有限公司 用户请求的处理方法和装置

Also Published As

Publication number Publication date
CN108182617B (zh) 2021-06-25

Similar Documents

Publication Publication Date Title
WO2020023733A1 (en) Blockchain-based cross-chain data access method and apparatus
US10296497B2 (en) Storing a key value to a deleted row based on key range density
CN104838368B (zh) 用于对具有相异存储器类型的计算设备的性能进行管理的系统和方法
CN108182617A (zh) 一种小型高并发扣减库存下单订单方法
CN108268216A (zh) 数据处理方法、装置及服务器
CN104094241B (zh) 一种传达与高速缓存相干性相关的信息的方法及系统
CN104408183B (zh) 数据系统的数据导入方法和装置
CN106302374B (zh) 一种用于提高表项访问带宽和原子性操作的装置及方法
CN107730287A (zh) 一种基于室内lbs的智慧会展管理系统
CN108108392B (zh) 商品数据管理方法、装置、计算机设备及存储介质
US9250977B2 (en) Tiered locking of resources
CN104021192A (zh) 一种数据库更新方法及装置
US20190377671A1 (en) Memory controller with memory resource memory management
US20180373896A1 (en) Techniques to provide granular control flow enforcement
CN107209761A (zh) 一种数据访问方法、装置及系统
Craig Seeking strategic advantage with technology?—Focus on customer value!
CN104636268A (zh) 一种可重构缓存组织结构
CN105824375A (zh) 一种服务器
CN105574122A (zh) 一种基于产品信息的数据检索系统
CN104881491A (zh) 一种基于大数据平台的软件开发系统
CN106326094A (zh) 检查指针异常的方法及系统
Watanabe et al. J apan's National Innovation System
CN117076465B (zh) 一种数据关联查询方法及相关设备
Montero Bressán Capitalist crisis and the geography of the clothing industry
CN113282624B (zh) 规则匹配方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A Small and High Concurrent Method for Reducing Inventory and Placing Orders

Effective date of registration: 20230712

Granted publication date: 20210625

Pledgee: Industrial Bank Co.,Ltd. Shanghai Jinqiao Branch

Pledgor: SHANGHAI SHOPEX NETWORK TECHNOLOGY Co.,Ltd.|SHOPEX SOFTWARE CO.,LTD.

Registration number: Y2023310000365

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20231007

Granted publication date: 20210625

Pledgee: Industrial Bank Co.,Ltd. Shanghai Jinqiao Branch

Pledgor: SHANGHAI SHOPEX NETWORK TECHNOLOGY Co.,Ltd.|SHOPEX SOFTWARE CO.,LTD.

Registration number: Y2023310000365

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A Small and High Concurrent Method for Reducing Inventory and Placing Orders

Effective date of registration: 20231010

Granted publication date: 20210625

Pledgee: Industrial Bank Co.,Ltd. Shanghai Jinqiao Branch

Pledgor: SHOPEX SOFTWARE CO.,LTD.

Registration number: Y2023310000635

PE01 Entry into force of the registration of the contract for pledge of patent right