CN111179080B - 一种订单处理方法和订单处理装置 - Google Patents
一种订单处理方法和订单处理装置 Download PDFInfo
- Publication number
- CN111179080B CN111179080B CN201911338551.8A CN201911338551A CN111179080B CN 111179080 B CN111179080 B CN 111179080B CN 201911338551 A CN201911338551 A CN 201911338551A CN 111179080 B CN111179080 B CN 111179080B
- Authority
- CN
- China
- Prior art keywords
- order
- processing
- request
- matching
- thread pool
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种订单处理方法和订单处理装置,涉及计算机技术领域。该方法的一具体实施方式包括:基于分布式消息队列获取订单请求;将订单请求加载到处理线程池,并在处理线程池中对订单请求进行订单处理;统计获取订单请求的接收频率和处理线程池的处理频率,并根据接收频率和处理频率调整处理线程池中订单处理线程的数量。该实施方式能够严格按照价格的更新来匹配挂单是否成交,避免套利风险,动态调整处理线程池中订单处理线程的数量,实现高频次并发下的高可用。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种订单处理方法和订单处理装置。
背景技术
随着信息技术的日新月异和金融业务的快速发展,金融交易领域对于核心技术的求也在不断增强,国内外金融交易模式已经从传统的人工叫价的方式变成了由高度电子化交易系统撮合订单的方式。电子金融交易的主要优点有:交易效率高速度快、交易透明度高、交易成本低、系统安全性高、不受交易时间的限制、不受交易空间的限制、可以进行多方位的扩展、大力推动现代金融业发展等。因此现在电子交易己经成为了金融交易市场的主流交易方式。
随着交易人数、笔数的不断增加,系统承受着越来越大的压力,如果在交易时间内系统发生故障,造成的损失往往不可估量。并且,现有的电子交易采用定时刷新价格的方式进行交易撮合,例如每6秒刷新一次价格,无法实现一价一挂单(即按价格匹配撮合挂单),存在重大的套利风险,且缺少拥塞处理机制。因此发出更可靠更高效的电子交易系统己经成为了金融交易领域的当务之急。
发明内容
有鉴于此,本发明实施例提供一种订单处理方法和订单处理装置,能够严格按照价格的更新来匹配挂单是否成交,避免套利风险,动态调整处理线程池中订单处理线程的数量,实现高频次并发下的高可用。
为实现上述目的,根据本发明实施例的一个方面,提供了一种订单处理方法。
本发明实施例的一种订单处理方法包括:
基于分布式消息队列获取订单请求;
将所述订单请求加载到处理线程池,并在所述处理线程池中对所述订单请求进行订单处理;
统计获取所述订单请求的接收频率和所述处理线程池的处理频率,并根据所述接收频率和所述处理频率调整所述处理线程池中订单处理线程的数量。
可选地,基于分布式消息队列获取订单请求,包括:
将订单请求放入定报价平台的消息主题队列;其中,所述订单请求携带有交易产品及对应的报价,且所述交易产品与所述消息主题队列和所述订单处理线程相对应;
对定报价平台的至少一个所述消息主题队列进行监听,以从所述消息主题队列获取所述订单请求。
可选地,所述订单请求包括主挂单请求和子挂单请求;以及
在所述处理线程池中对所述订单请求进行订单处理,包括:
在所述处理线程池中对所述主挂单请求进行撮合处理;
若撮合成功,则对所述主挂单请求进行成交处理,并将所述主挂单请求对应的子挂单请求加载到所述处理线程池进行撮合处理;
若撮合失败,则记录失败次数,并在所述失败次数大于预设撮合次数时进行告警通知。
可选地,对所述主挂单请求进行成交处理,包括:
将所述主挂单请求的挂单状态由待撮合修改为撮合成功;
拼接并返回所述主挂单请求的交易报文,以及将所述主挂单请求的挂单状态由撮合成功修改为交割成功。
可选地,所述子挂单请求是追加挂单请求或选择挂单请求;以及
将所述主挂单请求对应的子挂单请求加载到所述处理线程池进行撮合处理,包括:
将所述主挂单请求对应的追加挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述追加挂单请求的挂单状态,以及拼接并返回所述追加挂单请求的交易报文;或
将所述主挂单请求对应的选择挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述选择挂单请求的挂单状态,撤销所述主挂单请求对应的其它选择挂单请求,以及拼接并返回所述选择挂单请求的交易报文。
可选地,根据所述接收频率和所述处理频率调整所述处理线程池中订单处理线程的数量,包括:
若所述接收频率大于所述处理频率,则增加所述处理线程池中订单处理线程的数量;
若所述接收频率小于所述处理频率,则减少所述处理线程池中订单处理线程的数量;
若所述接收频率与所述处理频率的比值大于预设拥塞值,则丢弃所述处理线程池中的所有订单请求。
为实现上述目的,根据本发明实施例的又一方面,提供了一种订单处理装置。
本发明实施例的一种订单处理装置包括:
获取模块,用于基于分布式消息队列获取订单请求;
撮合模块,用于将所述订单请求加载到处理线程池,并在所述处理线程池中对所述订单请求进行订单处理;
调整模块,用于统计获取所述订单请求的接收频率和所述处理线程池的处理频率,并根据所述接收频率和所述处理频率调整所述处理线程池中订单处理线程的数量。
可选地,所述获取模块还用于:
将订单请求放入定报价平台的消息主题队列;其中,所述订单请求携带有交易产品及对应的报价,且所述交易产品与所述消息主题队列和所述订单处理线程相对应;
对定报价平台的至少一个所述消息主题队列进行监听,以从所述消息主题队列获取所述订单请求。
可选地,所述订单请求包括主挂单请求和子挂单请求;以及
所述撮合模块还用于:
在所述处理线程池中对所述主挂单请求进行撮合处理;
若撮合成功,则对所述主挂单请求进行成交处理,并将所述主挂单请求对应的子挂单请求加载到所述处理线程池进行撮合处理;
若撮合失败,则记录失败次数,并在所述失败次数大于预设撮合次数时进行告警通知。
可选地,所述撮合模块进一步用于:
将所述主挂单请求的挂单状态由待撮合修改为撮合成功;
拼接并返回所述主挂单请求的交易报文,以及将所述主挂单请求的挂单状态由撮合成功修改为交割成功。
可选地,所述子挂单请求是追加挂单请求或选择挂单请求;以及
所述撮合模块进一步用于:
将所述主挂单请求对应的追加挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述追加挂单请求的挂单状态,以及拼接并返回所述追加挂单请求的交易报文;或
将所述主挂单请求对应的选择挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述选择挂单请求的挂单状态,撤销所述主挂单请求对应的其它选择挂单请求,以及拼接并返回所述选择挂单请求的交易报文。
可选地,所述调整模块还用于:
若所述接收频率大于所述处理频率,则增加所述处理线程池中订单处理线程的数量;
若所述接收频率小于所述处理频率,则减少所述处理线程池中订单处理线程的数量;
若所述接收频率与所述处理频率的比值大于预设拥塞值,则丢弃所述处理线程池中的所有订单请求。
为实现上述目的,根据本发明实施例的又一方面,提供了一种订单处理的电子设备。
本发明实施例的一种订单处理的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的一种订单处理方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读存储介质。
本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的一种订单处理方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用基于分布式消息队列获取订单请求;将订单请求加载到处理线程池,并在处理线程池中对订单请求进行订单处理;统计获取订单请求的接收频率和处理线程池的处理频率,并根据接收频率和处理频率调整处理线程池中订单处理线程的数量的技术手段,所以克服了无法实现一价一挂单,存在重大的套利风险,且缺少拥塞处理机制的技术问题,进而达到严格按照价格的更新来匹配挂单是否成交,避免套利风险,动态调整处理线程池中订单处理线程的数量,实现高频次并发下的高可用的技术效果。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的订单处理方法的主要步骤的示意图;
图2是根据本发明一个可参考实施例的订单处理方法的实施架构的示意图;
图3是根据本发明一个可参考实施例的订单处理方法的主要流程的示意图;
图4是根据本发明实施例的订单处理方法的获取订单请求的示意图;
图5是根据本发明实施例的订单处理方法的订单请求分类处理的示意图;
图6是根据本发明实施例的订单处理方法的订单请求的处理流程的示意图一;
图7是根据本发明实施例的订单处理方法的订单请求的处理流程的示意图二;
图8是根据本发明实施例的订单处理方法的成交处理的示意图一;
图9是根据本发明实施例的订单处理方法的成交处理的示意图二;
图10是根据本发明实施例的订单处理装置的主要模块的示意图;
图11是本发明实施例可以应用于其中的示例性系统架构图;
图12是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要指出的是,在不冲突的情况下,本发明的实施例以及实施例中的技术特征可以相互结合。
本发明实施例的订单处理方法提出,基于分布式消息分发接收订单请求,将订单请求加载到处理线程池进行订单处理,对于处理线程池中订单处理线程的数量,主要基于接收频率和处理频率动态调整,每个订单处理线程,在完成一条订单请求的订单处理后才进行下一次订单处理,对于撮合成功的订单请求修改其挂单状态,撮合失败的则记录失败次数,后续可以根据挂单状态重复发起订单处理、或根据失败次数采取告警处理(即告警通知)。
采用分布式消息分发替换现有技术中的定时刷新价格,使得消息主题队列中包含当前交易产品的最新价格,实现严格按照价格的更新来匹配挂单是否成交,避免套利风险。分布式消息分发的用户体验较好。动态调整处理线程池中订单处理线程的数量,能够实现高频次并发下的高可用。且每个订单处理线程对应于一种业务(即交易产品),从而适应不同业务之间的撮合匹配规则差异,业务实现更灵活。
图1是根据本发明实施例的订单处理方法的主要步骤的示意图。
如图1所示,本发明实施例的订单处理方法主要包括以下步骤:
步骤S101:基于分布式消息队列获取订单请求。
分布式消息队列是一种消息中间件,消息发送者将产生的消息实体按照不同的主题(Topic)分发到不同的逻辑队列。订单请求可以是期货、贵金属或外汇等金融产品交易的请求,也可以是转让物品交易的请求,在订单请求中携带有交易产品及对应的报价,该报价可以是买入价格或卖出价格。本发明实施例的订单处理方法中,所有的订单请求均通过分布式消息队列来分发,通过对分布式消息队列的顺序管理,实现订单请求的发送与撮合线程连接,使得获取到的是最新价格。
此外,基于分布式消息队列还可以获取撤销请求,撤销请求用于将已发起的某个订单请求撤销。
在本发明实施例中,步骤S101可以采用以下方式实现:将订单请求放入定报价平台的消息主题队列;对定报价平台的至少一个消息主题队列进行监听,以从消息主题队列获取订单请求。
订单请求的交易产品与消息主题队列和订单处理线程相对应,即每种交易产品都对应有固定的消息主题队列和订单处理线程,同一产品的订单请求会放入对应和消息主题队列,并使用对应的订单处理线程进行订单处理。对于用户的订单请求在被发送到定报价平台后,根据其对应的交易产品放入与交易产品对应的消息主题队列。为保证报价的时效性,定报价平台或其它服务端对消息主题队列进行监听,如果有订单请求进入则从中拉取并进行后续处理,且采用先进先出的方式从消息主题队列中获取订单请求,如果没有则继续监听等待。此外,某些交易产品可能仅在特定时间交易,所以这些交易产品对应的消息主题队列不需要一直监听,因此同一时间可能仅对部分消息主题队列进行监听。
步骤S102:将订单请求加载到处理线程池,并在处理线程池中对订单请求进行订单处理。
处理线程池由多个订单处理线程组成,每个订单处理线程用于处理一种交易产品。从消息主题队列中获取的订单请求会被加载到处理线程池进行订单处理。
该订单处理是指撮合处理,撮合处理表示在多边交易中,由市场运营机构或电力经纪人按照市场规则对买卖交易进行的匹配。
本发明实施例的订单处理方法中的订单请求可以包括主挂单请求和子挂单请求。主挂单请求是用户仅指定了交易产品及对应报价,只要满足价格要求便可以交易的请求;子挂单请求是基于主挂单请求的,在主挂单完成交易的情况下才可以对其进行撮合处理的请求。并且,子挂单请求可以是追加挂单请求或选择挂单请求,其中,追加挂单请求是在主挂单完成交易的基础上所提出的请求,例如,主挂单请求是以A价格买入黄金,则追加挂单请求可以是将黄金以B价格卖出;选择挂单请求是在主挂单完成交易的基础上所提出的至少二个互斥的请求,例如,主挂单请求是以A价格买入黄金,则选择挂单请求可以是将黄金以高于A价格的B价格卖出(对应于止盈的情况)、和将黄金以低于A价格的C价格卖出(对应于止损的情况),这两个选择挂单请求中的一个撮合成功后另一个失效(即需要撤销)。
在本发明实施例中,在处理线程池中对订单请求进行订单处理的步骤可以采用以下方式实现:在处理线程池中对主挂单请求进行撮合处理;若撮合成功,则对主挂单请求进行成交处理,并将主挂单请求对应的子挂单请求加载到处理线程池进行撮合处理;若撮合失败,则记录失败次数,并在失败次数大于预设撮合次数时进行告警通知。
对于订单请求,如果是主挂单请求,则可以实时进行撮合处理,如果是子挂单请求,则需要在对应的主挂单请求完成撮合处理后,才可以对其进行撮合处理。撮合成功的主挂单请求会进行成交处理以完成交易。通常,由于存在无满足主挂单请求的报价等原因可能导致撮合失败,撮合失败的主挂单请求会在一段时间后再次对其进行撮合处理,同时如果一个主挂单请求的失败次数大于预设撮合次数,表示该主挂单请求可能与实际情况差距较大(即极难完成撮合),可以发起告警处理(即告警通知)以对其进行干预,避免占用线程资源。预设撮合次数可以根据实际情况设置。此外,撮合处理可以采用现有的技术方案实现,本发明实施例不予赘述。
在本发明实施例中,成交处理主要包括:将主挂单请求的挂单状态由待撮合修改为撮合成功;拼接并返回主挂单请求的交易报文,以及将主挂单请求的挂单状态由撮合成功修改为交割成功。
挂单状态包括待撮合、撮合成功和交割成功,一个主挂单请求的从发起到交易完成其挂单状态的变化是待撮合→撮合成功→交割成功,通过挂单状态能够标识主挂单请求的处理状态,其中,待撮合表示还未撮合成功;撮合成功表示已完成撮合,可以进行后续交割处理;交割成功表示已完成交割处理,交易成功。对于交易成功主挂单请求,为其拼接交易报文以通知交易的相关方,在交易报文中可以记录交易信息等内容,此外,交易报文还可以采用现有的格式和内容,本发明实施例不予赘述。
在本发明实施例中,将主挂单请求对应的子挂单请求加载到处理线程池进行撮合处理的步骤可以采用以下方式实现:将主挂单请求对应的追加挂单请求加载到处理线程池进行撮合处理,在撮合成功时,修改追加挂单请求的挂单状态,以及拼接并返回追加挂单请求的交易报文;或将主挂单请求对应的选择挂单请求加载到处理线程池进行撮合处理,在撮合成功时,修改选择挂单请求的挂单状态,撤销主挂单请求对应的其它选择挂单请求,以及拼接并返回选择挂单请求的交易报文。
对于追加挂单请求和选择挂单请求,在撮合成功后同样需要进行成交处理,不同的是选择挂单请求还需要将互斥的其它选择挂单请求进行撤销。
步骤S103:统计获取订单请求的接收频率和处理线程池的处理频率,并根据接收频率和处理频率调整处理线程池中订单处理线程的数量。
获取订单请求的接收频率是指一时间段内从定报价平台拉取订单请求的频率,能够体现处理线程池的负载。处理线程池的处理频率是指一时间段内处理线程池进行了多少次撮合处理(包括撮合成功和撮合失败),能够体现处理线程池的处理能力。根据接收频率和处理频率动态地调整处理线程池中订单处理线程的数量,能够使处理线程池的处理能力与负载相匹配,实现高频次并发下的高可用。此外,本步骤与步骤S101和步骤S102不存在顺序先后关系。
在本发明实施例中,步骤S103可以采用以下方式实现:若接收频率大于处理频率,则增加处理线程池中订单处理线程的数量;若接收频率小于处理频率,则减少处理线程池中订单处理线程的数量;若接收频率与处理频率的比值大于预设拥塞值,则丢弃处理线程池中的所有订单请求。
如果接收频率大于处理频率,则表示处理线程池的处理能力低于负载,可以增加订单处理线程。如果接收频率小于处理频率,则表示处理线程池的处理能力高于负载,可以减少订单处理线程,以节约线程资源。进一步地,接收频率与处理频率的比值大于预设拥塞值,则表示处理线程池中的订单请求堆积导致线程拥塞,为保证后续处理线程池可以持续进行撮合处理,可以清空处理线程池(即丢弃当前所有订单请求)。其中,预设拥塞值可以根据实际情况设置。
根据本发明实施例的订单处理方法可以看出,因为采用基于分布式消息队列获取订单请求;将订单请求加载到处理线程池,并在处理线程池中对订单请求进行订单处理;统计获取订单请求的接收频率和处理线程池的处理频率,并根据接收频率和处理频率调整处理线程池中订单处理线程的数量的技术手段,所以克服了无法实现一价一挂单,存在重大的套利风险,且缺少拥塞处理机制的技术问题,进而达到严格按照价格的更新来匹配挂单是否成交,避免套利风险,动态调整处理线程池中订单处理线程的数量,实现高频次并发下的高可用的技术效果。
为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。
本发明实施例的订单处理方法可以基于图2所示架构实施,具体地:
接收价格,用户发起的所有订单请求会按交易产品放入定报价平台的各个消息主题队列中;
挂单监听,对定报价平台的至少一个消息主题队列进行监听;
数据记录一,如果有订单请求被放进消息主题队列,则从消息主题队列中获取订单请求,所获取到的订单请求可以写入内存等;
撮合处理,将订单请求加载到处理线程池以进行撮合处理;
数据记录二,完成撮合处理后进行记录撮合结果(即撮合成功或撮合失败,如果撮合失败还记录失败次数等等);
成交订单处理,将撮合成功的订单请求的挂单状态由待撮合修改为撮合成功,然后拼接并返回主挂单请求的交易报文,同时将主挂单请求的挂单状态由撮合成功修改为交割成功。
如图3所示,在应用本发明实施例的订单处理方法时,可参考以下流程:
1.获取价格队列,队列中包含当前线程所处理的货币对的最新价格:
用户发起的报价信息(即订单请求)会放入不同价格队列(即消息主题队列),并对价格队列的顺序管理,通过获取价格队列接收报价信息;
2.读取配置文件,为每个交易货币对开启一个撮合线程
3.按价格对依次取出价格队列
4.获取价格队列中一口价格
5.查询货币对开收盘状态:
可以利用SQL数据操纵语言(DML)中的查询表格内字段数据的指令,例如select开收盘状态代码from账户外汇货币对参数表where货币对英文简称and多实体标识;如果为开盘,则进行挂单撮合处理,否则不做挂单撮合处理
6.如果是账户金,查询历史价格
7.处理满足当前价格的订单:
从数据库挂单表中选择:
发起时间小于等于当前价格时间,
有效时间大于等于当前价格时间,
挂单状态为挂单生效
且满足以下条件之一的数据:
1)指令类型=止盈委托开仓,交易方向=买入,当前即期卖出价≤委托开仓价格
2)指令类型=止盈委托开仓,交易方向=卖出,当前即期买入价≥委托开仓价格
3)指令类型=止损委托开仓,交易方向=买入,当前即期卖出价≥委托开仓价格
4)指令类型=止损委托开仓,交易方向=卖出,当前即期买入价≤委托开仓价格
5)指令类型=委托平仓或委托平仓,交易方向=买入,当前即期卖出价≤委托获利价格或当前即期卖出价≥委托获利价格
6)指令类型=委托平仓或委托平仓,交易方向=卖出,当前即期买入价≥委托获利价格或当前即期买入价≤委托获利价格
7)指令类型=普通委托开仓,交易方向=买入,委托开仓价格≥当前即期卖出价且≤上一口即期卖出价或委托开仓价格≤等于当前即期卖出价且≥上一口即期卖出价
8)指令类型=普通委托开仓,交易方向=卖出,委托开仓价格≥当前即期买入价且≤上一口即期买入价或委托开仓价格≤当前即期买入价且≥上一口即期买入价
将这些被选中数据的挂单状态更新为“价格匹配”,加载状态更新为“已加载”,并记录匹配价(交易方向=买入,记录即期卖出价;交易方向=卖出,记录即期买入价)和时间戳
8.移除已处理的一口价格
9.将该价格更新至6中查询到的上一口价格表
如图4所示,订单请求接收阶段的业务处理流程为:
监听报价信息,以接收价格(即订单请求);
进行线程管理及次数的维护,在上一口价格撮合完毕后才可以进行下一次的挂单撮合处理;
在上一口价格撮合完毕后(即完成上一订单请求的撮合),发起撮合成交任务,即发送一口价格到处理线程池;
如果上一口价格未撮合完毕,接收频率和处理频率的协调控制:如果价格频率大于处理频率时,会导致价格堆积,处理方式,进行告警通知(人工介入),动态增加订单处理线程(或者减少订单处理线程),在完成当前一口价格的处理后(完成撮合或撤销)后,发起撮合成交任务。
挂单处理主要是接收订单请求,加载并记录订单请求。如图5所示,订单请求包括主挂单请求、追加挂单请求和选择挂单请求,加载所有主挂单请求到处理线程池进行撮合处理,在主挂单请求完成撮合处理后,再加载追加挂单请求或选择挂单请求到处理线程池进行撮合处理,最终将所有撮合成功的订单请求录入撮合订单。
如图6和7所示,撮合处理后的订单请求的处理流程为:循环获得可成交的订单(即撮合处理后的订单请求),调用交易发起模块(即具有完成交易功能的工具或方法),根据交易状态(即挂单状态)进行后续重复发起调用撮合成功模块或进行告警处理。
如图8和9所示,撮合成功的订单请求主要采取两种处理:一是拼接交易报文,主要是对交易系统本地化,并返回报文,以通知相关方;二是修改订单请求的挂单状态。
图10是根据本发明实施例的订单处理装置的主要模块的示意图。
如图10所示,本发明实施例的订单处理装置1000包括:获取模块1001、撮合模块1002和调整模块1003。
其中,
获取模块1001,用于基于分布式消息队列获取订单请求;
撮合模块1002,用于将所述订单请求加载到处理线程池,并在所述处理线程池中对所述订单请求进行订单处理;
调整模块1003,用于统计获取所述订单请求的接收频率和所述处理线程池的处理频率,并根据所述接收频率和所述处理频率调整所述处理线程池中订单处理线程的数量。
在本发明实施例中,所述获取模块1001还可以用于:
将订单请求放入定报价平台的消息主题队列;其中,所述订单请求携带有交易产品及对应的报价,且所述交易产品与所述消息主题队列和所述订单处理线程相对应;
对定报价平台的至少一个所述消息主题队列进行监听,以从所述消息主题队列获取所述订单请求。
此外,所述订单请求可以包括主挂单请求和子挂单请求。
在本发明实施例中,所述撮合模块1002还可以用于:
在所述处理线程池中对所述主挂单请求进行撮合处理;
若撮合成功,则对所述主挂单请求进行成交处理,并将所述主挂单请求对应的子挂单请求加载到所述处理线程池进行撮合处理;
若撮合失败,则记录失败次数,并在所述失败次数大于预设撮合次数时进行告警通知。
在本发明实施例中,所述撮合模块1002可以进一步用于:
将所述主挂单请求的挂单状态由待撮合修改为撮合成功;
拼接并返回所述主挂单请求的交易报文,以及将所述主挂单请求的挂单状态由撮合成功修改为交割成功。
此外,所述子挂单请求可以是追加挂单请求或选择挂单请求。
在本发明实施例中,所述撮合模块1002可以进一步用于:
将所述主挂单请求对应的追加挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述追加挂单请求的挂单状态,以及拼接并返回所述追加挂单请求的交易报文;或
将所述主挂单请求对应的选择挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述选择挂单请求的挂单状态,撤销所述主挂单请求对应的其它选择挂单请求,以及拼接并返回所述选择挂单请求的交易报文。
在本发明实施例中,所述调整模块1003还可以用于:
若所述接收频率大于所述处理频率,则增加所述处理线程池中订单处理线程的数量;
若所述接收频率小于所述处理频率,则减少所述处理线程池中订单处理线程的数量;
若所述接收频率与所述处理频率的比值大于预设拥塞值,则丢弃所述处理线程池中的所有订单请求。
根据本发明实施例的订单处理装置可以看出,因为采用基于分布式消息队列获取订单请求;将订单请求加载到处理线程池,并在处理线程池中对订单请求进行订单处理;统计获取订单请求的接收频率和处理线程池的处理频率,并根据接收频率和处理频率调整处理线程池中订单处理线程的数量的技术手段,所以克服了无法实现一价一挂单,存在重大的套利风险,且缺少拥塞处理机制的技术问题,进而达到严格按照价格的更新来匹配挂单是否成交,避免套利风险,动态调整处理线程池中订单处理线程的数量,实现高频次并发下的高可用的技术效果。
图11示出了可以应用本发明实施例的订单处理方法或订单处理装置的示例性系统架构1100。
如图11所示,系统架构1100可以包括终端设备1101、1102、1103,网络1104和服务器1105。网络1104用以在终端设备1101、1102、1103和服务器1105之间提供通信链路的介质。网络1104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备1101、1102、1103通过网络1104与服务器1105交互,以接收或发送消息等。终端设备1101、1102、1103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备1101、1102、1103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器1105可以是提供各种服务的服务器,例如对用户利用终端设备1101、1102、1103所浏览的购物类网站提供支持的后台管理服务器。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息)反馈给终端设备。
需要说明的是,本发明实施例所提供的订单处理方法一般由服务器1105执行,相应地,订单处理装置一般设置于服务器1105中。
应该理解,图11中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图12,其示出了适于用来实现本发明实施例的终端设备的计算机系统1200的结构示意图。图12示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图12所示,计算机系统1200包括中央处理单元(CPU)1201,其可以根据存储在只读存储器(ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(RAM)1203中的程序而执行各种适当的动作和处理。在RAM 1203中,还存储有系统1200操作所需的各种程序和数据。CPU 1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。
以下部件连接至I/O接口1205:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被中央处理单元(CPU)1201执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、撮合模块和调整模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,获取模块还可以被描述为“基于分布式消息队列获取订单请求的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:步骤S101:基于分布式消息队列获取订单请求;步骤S102:将订单请求加载到处理线程池,并在处理线程池中对订单请求进行订单处理;步骤S103:统计获取订单请求的接收频率和处理线程池的处理频率,并根据接收频率和处理频率调整处理线程池中订单处理线程的数量。
根据本发明实施例的技术方案,因为采用基于分布式消息队列获取订单请求;将订单请求加载到处理线程池,并在处理线程池中对订单请求进行订单处理;统计获取订单请求的接收频率和处理线程池的处理频率,并根据接收频率和处理频率调整处理线程池中订单处理线程的数量的技术手段,所以克服了无法实现一价一挂单,存在重大的套利风险,且缺少拥塞处理机制的技术问题,进而达到严格按照价格的更新来匹配挂单是否成交,避免套利风险,动态调整处理线程池中订单处理线程的数量,实现高频次并发下的高可用的技术效果。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (14)
1.一种订单处理方法,其特征在于,包括:
基于分布式消息队列获取订单请求;其中,订单请求根据其对应的交易产品放入与交易产品对应的消息主题队列,消息主题队列位于定价平台,包含当前交易产品的最新价格;
将所述订单请求加载到处理线程池,并在所述处理线程池中对所述订单请求进行订单处理;其中,每个处理线程用于处理一种交易产品,订单请求包括主挂单请求、子挂单请求,加载所有主挂单请求到处理线程池进行撮合处理,在主挂单请求完成撮合处理后,再加载子挂单请求到处理线程池进行撮合处理,最终将所有撮合成功的订单请求录入撮合订单;
统计获取所述订单请求的接收频率和所述处理线程池的处理频率,并根据所述接收频率和所述处理频率调整所述处理线程池中订单处理线程的数量;其中,获取所述订单请求的接收频率是指一时间段内从定报价平台拉取订单请求的频率,若所述接收频率与所述处理频率的比值大于预设拥塞值,则丢弃所述处理线程池中的所有订单请求。
2.根据权利要求1所述的订单处理方法,其特征在于,基于分布式消息队列获取订单请求,包括:
将订单请求放入定报价平台的消息主题队列;其中,所述订单请求携带有交易产品及对应的报价,且所述交易产品与所述消息主题队列和所述订单处理线程相对应;
对定报价平台的至少一个所述消息主题队列进行监听,以从所述消息主题队列获取所述订单请求。
3.根据权利要求2所述的订单处理方法,其特征在于,所述订单请求包括主挂单请求和子挂单请求;以及
在所述处理线程池中对所述订单请求进行订单处理,包括:
在所述处理线程池中对所述主挂单请求进行撮合处理;
若撮合成功,则对所述主挂单请求进行成交处理,并将所述主挂单请求对应的子挂单请求加载到所述处理线程池进行撮合处理;
若撮合失败,则记录失败次数,并在所述失败次数大于预设撮合次数时进行告警通知。
4.根据权利要求3所述的订单处理方法,其特征在于,对所述主挂单请求进行成交处理,包括:
将所述主挂单请求的挂单状态由待撮合修改为撮合成功;
拼接并返回所述主挂单请求的交易报文,以及将所述主挂单请求的挂单状态由撮合成功修改为交割成功。
5.根据权利要求3所述的订单处理方法,其特征在于,所述子挂单请求是追加挂单请求或选择挂单请求;以及
将所述主挂单请求对应的子挂单请求加载到所述处理线程池进行撮合处理,包括:
将所述主挂单请求对应的追加挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述追加挂单请求的挂单状态,以及拼接并返回所述追加挂单请求的交易报文;或
将所述主挂单请求对应的选择挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述选择挂单请求的挂单状态,撤销所述主挂单请求对应的其它选择挂单请求,以及拼接并返回所述选择挂单请求的交易报文。
6.根据权利要求1所述的订单处理方法,其特征在于,根据所述接收频率和所述处理频率调整所述处理线程池中订单处理线程的数量,还包括:
若所述接收频率大于所述处理频率,则增加所述处理线程池中订单处理线程的数量;
若所述接收频率小于所述处理频率,则减少所述处理线程池中订单处理线程的数量。
7.一种订单处理装置,其特征在于,包括:
获取模块,用于基于分布式消息队列获取订单请求;其中,订单请求根据其对应的交易产品放入与交易产品对应的消息主题队列,消息主题队列位于定价平台,包含当前交易产品的最新价格;
撮合模块,用于将所述订单请求加载到处理线程池,并在所述处理线程池中对所述订单请求进行订单处理;其中,每个处理线程用于处理一种交易产品,订单请求包括主挂单请求、子挂单请求,加载所有主挂单请求到处理线程池进行撮合处理,在主挂单请求完成撮合处理后,再加载子挂单请求到处理线程池进行撮合处理,最终将所有撮合成功的订单请求录入撮合订单;
调整模块,用于统计获取所述订单请求的接收频率和所述处理线程池的处理频率,并根据所述接收频率和所述处理频率调整所述处理线程池中订单处理线程的数量;其中,获取所述订单请求的接收频率是指一时间段内从定报价平台拉取订单请求的频率,若所述接收频率与所述处理频率的比值大于预设拥塞值,则丢弃所述处理线程池中的所有订单请求。
8.根据权利要求7所述的订单处理装置,其特征在于,所述获取模块还用于:
将订单请求放入定报价平台的消息主题队列;其中,所述订单请求携带有交易产品及对应的报价,且所述交易产品与所述消息主题队列和所述订单处理线程相对应;
对定报价平台的至少一个所述消息主题队列进行监听,以从所述消息主题队列获取所述订单请求。
9.根据权利要求8所述的订单处理装置,其特征在于,所述订单请求包括主挂单请求和子挂单请求;以及
所述撮合模块还用于:
在所述处理线程池中对所述主挂单请求进行撮合处理;
若撮合成功,则对所述主挂单请求进行成交处理,并将所述主挂单请求对应的子挂单请求加载到所述处理线程池进行撮合处理;
若撮合失败,则记录失败次数,并在所述失败次数大于预设撮合次数时进行告警通知。
10.根据权利要求9所述的订单处理装置,其特征在于,所述撮合模块进一步用于:
将所述主挂单请求的挂单状态由待撮合修改为撮合成功;
拼接并返回所述主挂单请求的交易报文,以及将所述主挂单请求的挂单状态由撮合成功修改为交割成功。
11.根据权利要求9所述的订单处理装置,其特征在于,所述子挂单请求是追加挂单请求或选择挂单请求;以及
所述撮合模块进一步用于:
将所述主挂单请求对应的追加挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述追加挂单请求的挂单状态,以及拼接并返回所述追加挂单请求的交易报文;或
将所述主挂单请求对应的选择挂单请求加载到所述处理线程池进行撮合处理,在撮合成功时,修改所述选择挂单请求的挂单状态,撤销所述主挂单请求对应的其它选择挂单请求,以及拼接并返回所述选择挂单请求的交易报文。
12.根据权利要求7所述的订单处理装置,其特征在于,所述调整模块还用于:
若所述接收频率大于所述处理频率,则增加所述处理线程池中订单处理线程的数量;
若所述接收频率小于所述处理频率,则减少所述处理线程池中订单处理线程的数量。
13.一种订单处理的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的订单处理方法。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一所述的订单处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911338551.8A CN111179080B (zh) | 2019-12-23 | 2019-12-23 | 一种订单处理方法和订单处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911338551.8A CN111179080B (zh) | 2019-12-23 | 2019-12-23 | 一种订单处理方法和订单处理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111179080A CN111179080A (zh) | 2020-05-19 |
CN111179080B true CN111179080B (zh) | 2023-10-27 |
Family
ID=70655623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911338551.8A Active CN111179080B (zh) | 2019-12-23 | 2019-12-23 | 一种订单处理方法和订单处理装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111179080B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111861662B (zh) * | 2020-07-17 | 2021-08-17 | 上海聚音信息科技有限公司 | 订单回推及库存管理方法、装置及计算机可读存储介质 |
CN111932311B (zh) * | 2020-08-14 | 2023-09-26 | 中国工商银行股份有限公司 | 一种贵金属自动化交易执行方法及装置 |
CN113722073A (zh) * | 2021-09-15 | 2021-11-30 | 中国银行股份有限公司 | 一种交易撮合处理方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104754036A (zh) * | 2015-03-06 | 2015-07-01 | 合一信息技术(北京)有限公司 | 一种基于kafka的消息处理系统及处理方法 |
CN105956108A (zh) * | 2016-05-04 | 2016-09-21 | 北京思特奇信息技术股份有限公司 | 一种高负载的自动处理方法及系统 |
CN107193539A (zh) * | 2016-03-14 | 2017-09-22 | 北京京东尚科信息技术有限公司 | 多线程并发处理方法和多线程并发处理系统 |
CN107679931A (zh) * | 2017-08-17 | 2018-02-09 | 平安科技(深圳)有限公司 | 订单异步处理的方法、装置、存储介质及终端 |
CN108134814A (zh) * | 2017-11-27 | 2018-06-08 | 海尔优家智能科技(北京)有限公司 | 一种业务数据处理方法及装置 |
CN108960960A (zh) * | 2018-06-01 | 2018-12-07 | 中国平安人寿保险股份有限公司 | 一种处理高并发数据的方法及服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9311673B2 (en) * | 2002-06-05 | 2016-04-12 | Nasdaq, Inc. | Security transaction matching |
-
2019
- 2019-12-23 CN CN201911338551.8A patent/CN111179080B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104754036A (zh) * | 2015-03-06 | 2015-07-01 | 合一信息技术(北京)有限公司 | 一种基于kafka的消息处理系统及处理方法 |
CN107193539A (zh) * | 2016-03-14 | 2017-09-22 | 北京京东尚科信息技术有限公司 | 多线程并发处理方法和多线程并发处理系统 |
CN105956108A (zh) * | 2016-05-04 | 2016-09-21 | 北京思特奇信息技术股份有限公司 | 一种高负载的自动处理方法及系统 |
CN107679931A (zh) * | 2017-08-17 | 2018-02-09 | 平安科技(深圳)有限公司 | 订单异步处理的方法、装置、存储介质及终端 |
CN108134814A (zh) * | 2017-11-27 | 2018-06-08 | 海尔优家智能科技(北京)有限公司 | 一种业务数据处理方法及装置 |
CN108960960A (zh) * | 2018-06-01 | 2018-12-07 | 中国平安人寿保险股份有限公司 | 一种处理高并发数据的方法及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN111179080A (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216430B2 (en) | Next generation near real-time indexing | |
CN111179080B (zh) | 一种订单处理方法和订单处理装置 | |
WO2018210062A1 (zh) | 用于服务器系统的确定物品库存的方法和装置 | |
CN111127181B (zh) | 一种凭证记账方法和装置 | |
CN111429241A (zh) | 一种账务处理方法和装置 | |
CN112884405A (zh) | 一种询价系统及其调度方法 | |
CN110738436A (zh) | 一种确定可用库存的方法和装置 | |
CN111367663A (zh) | 业务处理的方法和装置 | |
CN111275450B (zh) | 一种商品退货后的关联优惠信息的处理方法和系统 | |
CN111210349B (zh) | 虚拟资产的转托管方法、装置、电子设备和存储介质 | |
US20230014255A1 (en) | Bundling line item based events in an event-driven architecture | |
CN115019943A (zh) | 一种医药数据管理方法及系统 | |
CN114666319A (zh) | 数据下载方法、装置、电子设备和可读存储介质 | |
CN113762819A (zh) | 渠道调度的方法和装置 | |
CN114581225A (zh) | 证券下单的方法、系统、计算机设备及存储介质 | |
CN113762835A (zh) | 一种处理订单数据的方法和装置 | |
CN110795445A (zh) | 并发任务的处理方法、装置、服务器设备及介质 | |
CN110866709B (zh) | 合并订单的方法和装置 | |
CN110827047A (zh) | 动态定价方法和装置 | |
CN111192113A (zh) | 订单处理方法、装置、设备及存储介质 | |
CN112015790A (zh) | 一种数据处理的方法和装置 | |
CN114756556B (zh) | 处理账户数据的方法、装置、电子设备和计算机可读介质 | |
CN111882118B (zh) | 一种决策系统和方法 | |
CN112950380B (zh) | 一种基于区块链的交易一致性的处理方法和装置 | |
CN114866538B (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220920 Address after: 25 Financial Street, Xicheng District, Beijing 100033 Applicant after: CHINA CONSTRUCTION BANK Corp. Address before: 25 Financial Street, Xicheng District, Beijing 100033 Applicant before: CHINA CONSTRUCTION BANK Corp. Applicant before: Jianxin Financial Science and Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |