CN112948434B - 基于业务事件的业务处理方法、装置、计算机设备及存储介质 - Google Patents

基于业务事件的业务处理方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112948434B
CN112948434B CN202110211334.3A CN202110211334A CN112948434B CN 112948434 B CN112948434 B CN 112948434B CN 202110211334 A CN202110211334 A CN 202110211334A CN 112948434 B CN112948434 B CN 112948434B
Authority
CN
China
Prior art keywords
preset
service
processed
event
information
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
Application number
CN202110211334.3A
Other languages
English (en)
Other versions
CN112948434A (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.)
Ping An E Wallet Electronic Commerce Co Ltd
Original Assignee
Ping An E Wallet Electronic Commerce 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 Ping An E Wallet Electronic Commerce Co Ltd filed Critical Ping An E Wallet Electronic Commerce Co Ltd
Priority to CN202110211334.3A priority Critical patent/CN112948434B/zh
Publication of CN112948434A publication Critical patent/CN112948434A/zh
Application granted granted Critical
Publication of CN112948434B publication Critical patent/CN112948434B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种基于业务事件的业务处理方法、装置、计算机设备及存储介质。该方法属于研发框架技术领域,其包括:获取用户输入的待处理业务信息和待处理业务信息对应的预设状态;根据预设状态调用预设状态对应的预设行为方法;若根据预设状态调用预设行为方法成功,则触发待处理业务信息对应的业务事件;将业务事件对应的事件信息和待处理业务信息建立一一映射关系并存储至预设存储区;通过预设时间查询预设队列中是否存在业务事件;若预设队列中存在业务事件,则根据事件信息和一一映射关系从预设存储区中获取待处理业务信息;根据待处理业务信息对待处理业务进行业务处理。本申请实施例提高了业务处理的效率。

Description

基于业务事件的业务处理方法、装置、计算机设备及存储介质
技术领域
本发明涉及研发框架技术领域,尤其涉及一种基于业务事件的业务处理方法、装置、计算机设备及存储介质。
背景技术
电商交易系统具有模型多复杂度高、流程链路长、业务变化快、应对突发流量性能要求高等特点,随着业务的不断迭代每个模型的边界和管理以及后续的扩展都需要不断地复制类似功能代码,导致业务逻辑冗余,不清晰,业务处理时间长。
发明内容
本发明实施例提供了一种基于业务事件的业务处理方法、装置、计算机设备及存储介质,旨在解决现有业务处理效率低下的问题。
第一方面,本发明实施例提供了一种基于业务事件的业务处理方法,其包括:
获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;
根据所述预设状态调用所述预设状态对应的预设行为方法;
若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;
将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;
通过预设时间查询预设队列中是否存在所述业务事件;
若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;
根据所述待处理业务信息对待处理业务进行业务处理。
第二方面,本发明实施例还提供了一种业务处理装置,其包括:
第一获取单元,用于获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;
确定单元,用于根据所述预设状态调用所述预设状态对应的预设行为方法;
触发单元,用于若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;
存储单元,用于将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;
查询单元,用于通过预设时间查询预设队列中是否存在所述业务事件;
第二获取单元,用于若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;
处理单元,用于根据所述待处理业务信息对待处理业务进行业务处理。
第三方面,本发明实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现上述方法。
本发明实施例提供了一种基于业务事件的业务处理方法、装置、计算机设备及存储介质。其中,所述方法包括:获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;根据所述预设状态调用所述预设状态对应的预设行为方法;若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;通过预设时间查询预设队列中是否存在所述业务事件;若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;根据所述待处理业务信息对待处理业务进行业务处理。本发明实施例的技术方案,先根据预设状态调用预设行为方法,再将事件信息和待处理业务信息建立一一映射关系并存储至预设存储区,最后根据事件信息和一一映射关系获取待处理业务信息以对待处理业务进行业务处理,提高了业务处理的效率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于业务事件的业务处理方法的流程示意图;
图2为本发明实施例提供的一种基于业务事件的业务处理方法的子流程示意图;
图3为本发明实施例提供的一种基于业务事件的业务处理方法的子流程示意图;
图4为本发明实施例提供的一种基于业务事件的业务处理方法的子流程示意图;
图5为本发明实施例提供的一种业务处理装置的示意性框图;
图6为本发明实施例提供的业务处理装置的触发单元的示意性框图;
图7为本发明实施例提供的业务处理装置的存储单元的示意性框图;
图8为本发明实施例提供的业务处理装置的第二获取单元的示意性框图;
图9为本发明实施例提供的业务处理装置的第二获取子单元的示意性框图;以及
图10为本发明实施例提供的一种计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
请参阅图1,图1是本发明实施例提供的一种基于业务事件的业务处理方法的流程示意图。本发明实施例的基于业务事件的业务处理方法可应用于终端中,例如手提电脑、笔记本电脑、台式电脑等智能终端设备,通过安装于所述终端上的应用程序来实现所述基于业务事件的业务处理方法,例如,本发明实施例开发的电商交易系统,从而缩短业务处理的时间,提高业务处理的效率。如图1所示,该方法包括以下步骤S100-S160。
S100、获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态。
在本发明实施例中,若用户在电商交易系统的页面中输入待处理业务,例如,下单信息,电商交易系统则会获取待处理业务对应的待处理业务信息,获取待处理业务消息之后,根据预设映射表确定待处理业务信息对应的预设状态。其中,待处理业务信息为订单信息,例如收货地址信息。预设状态为状态模式中枚举的状态类型,例如,下单、付款等状态。
需要说明的是,在本发明实施例中,将电商交易系统抽象成状态、行为、事件、服务四个框架模板,业务模型会继承和实现上述四个框架模板,在各个业务模型中填充各自的业务逻辑,再通过配置和组装形成完整的业务流程功能。本发明实施例中通过对电商交易系统代码的模块化处理以实现代码解耦,从而提高代码的可读性和可维护性,进而提高系统的可扩展性。
S110、根据所述预设状态调用所述预设状态对应的预设行为方法。
在本发明实施例中,获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态之后,会根据所述预设状态调用所述预设状态对应的预设行为方法。在本发明实施例中,预设状态与预设行为方法通过状态模式关联,状态模式为当一个对象的内在状态改变时允许改变其行为,即不同的转态对应不同的行为。状态模式实际为一张映射表,枚举的各个预设状态为键,键对应的键值即为预设行为方法。其中,预设行为方法为预设状态对应的方法,例如,下单状态对应有订单行为方法,退款状态对应有退款行为方法等。
需要说明的是,在本发明实施例中,电商交易系统中的所有预设状态对应预设行为方法均在电商交易系统的服务框架模板中,例如库存行为方法、营销行为方法等。
S120、若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件。
在本发明实施例中,确定所述预设状态对应的预设行为方法,会调用所述预设行为方法,若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件。
请参阅图2,在一实施例中,例如在本发明实施例中,所述步骤S120包括如下步骤S121-S125。
S121、通过所述预设行为方法的返回值判断调用所述预设行为方法是否成功;若调用所述预设行为方法成功,则执行步骤S122,否则执行步骤S123;
S122、触发所述待处理业务信息对应的业务事件;
S123、判断当前调用次数是否小于预设重试调用次数,若所述当前调用次数小于所述预设重试调用次数,则执行步骤S110,否则执行步骤S124;
S124、向用户发出失败提示信息。
在本发明实施例中,通过所述预设行为方法的返回值判断调用所述预设行为方法是否成功;若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;若调用所述预设行为方法失败,则继续判断当前调用次数是否小于预设重试调用次数,若所述当前调用次数小于所述预设重试调用次数,则返回执行步骤S110,即返回执行根据所述预设状态调用所述预设状态对应的预设行为方法的步骤;若所述调用次数不小于所述预设重试调用次数,表明调用所述预设行为方法出现异常,则向用户发出失败提示信息,以提醒用户进行相应处理。可理解地,所述预设行为方法的返回值为TRUE,表明调用所述预设行为方法成功,所述预设行为方法的返回值为FALSE,表明调用所述预设行为方法失败。
S130、将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区。
在本发明实施例中,触发所述待处理业务信息对应的业务事件之后,会将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区。其中,预设存储区包括缓存和数据库。事件信息包括所述业务事件对应的业务事件ID及订单号。
请参阅图3,在一实施例中,例如在本发明实施例中,所述步骤S130包括如下步骤S131-S132。
S131、根据所述业务事件对应的事件句柄获取对应的事件信息,其中,所述事件信息包括所述业务事件对应的业务事件ID及订单号;
S132、将所述事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区。
在本发明实施例中,根据所述业务事件对应的事件句柄获取对应的事件信息,将所述事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区。其中,事件句柄又称事件处理函数,是指事件发生时要进行的操作。在本实施例中,每一个业务事件均对应一个事件句柄,通过该事件句柄即可获取事件信息。可理解地,所述事件信息还包括触发所述业务事件时的时间戳,时间戳在所述业务事件再次发起时作为条件使用,即所述业务事件在预设时间后将失效。
需要说明的是,在本发明实施例中,数据库为redis,再其它实施例中,数据库也可为mysql、nsq等数据库,在此不作限定。
S140、通过预设时间查询预设队列中是否存在所述业务事件;
在本发明实施例中,将所述事件信息和所述待处理业务信息存储至预设存储区之后,会通过预设时间查询预设队列中是否存在所述业务事件。其中,预设队列为无锁队列。队列在计算机中是一种很重要的数据结构,尤其在操作系统中。队列典型的特征是先进先出(FIFO),符合流水线业务流程。在进程间通信、网络通信之间常常采用队列做缓存,缓解数据处理压力。
S150、若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息。
在本发明实施例中,通过预设时间查询预设队列中是否存在所述业务事件,若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息。可理解地,若所述预设队列中存在所述业务事件,则继续查询预设队列中是否存在所述业务事件。
请参阅图4,在一实施例中,例如在本发明实施例中,所述步骤S140包括如下步骤S151-S156。
S151、若所述预设队列中存在所述业务事件,则将所述订单号及所述业务事件ID拼接成查询信息;
S152、根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息;
S153、若在所述缓存中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;
S154、若在所述缓存中未找到到所述待处理业务信息,则根据所述查询信息和所述一一映射关系,在所述数据库中查找所述待处理业务信息;
S155、若在所述数据库中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤。
S156、若在所述数据库中未找到所述待处理业务信息,则在预设重试次数和预设时间内返回执行根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息的步骤。
在本发明实施例中,通过预设查询方法查询预设队列中是否存在所述业务事件,若所述预设队列中存在所述业务事件,则根据所述查询信息和所述一一映射关系从所述缓存或所述数据库中查找所述待处理业务信息;其中,预设查询方法是通过for循环实现的查询方法。具体地,先在所述缓存中查找所述待处理业务信息;若在所述缓存中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;若在所述缓存中未找到到所述待处理业务信息,则根据所述查询信息和所述一一映射关系,在所述数据库中查找所述待处理业务信息;若在所述数据库中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤。若在所述数据库中未找到所述待处理业务信息,则在预设重试次数和预设时间内返回执行根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息的步骤。可理解地,若在预设时间和预设重试内还不能从所述预设存储区中获取到所述待处理业务信息,则丢弃此次业务事件且启动监控报警机制,即为向用户发送业务处理失败的提示信息。
S160、根据所述待处理业务信息对待处理业务进行业务处理。
在本发明实施例中,根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息之后,会根据所述待处理业务信息对待处理业务进行业务处理。例如,根据订单信息对下单操作进行处理以完成下单业务流程。
图5是本发明实施例提供的一种业务处理装置200的示意性框图。如图5所示,对应于以上基于业务事件的业务处理方法,本发明还提供一种业务处理装置200。该业务处理装置200包括用于执行上述基于业务事件的业务处理方法的单元,该装置可以被配置于终端中。具体地,请参阅图5,该业务处理装置200包括第一获取单元201、确定单元202、触发单元203、存储单元204、查询单元205、第二获取单元206以及处理单元207。
其中,第一获取单元201用于获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;确定单元202用于根据所述预设状态调用所述预设状态对应的预设行为方法;触发单元203用于若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;存储单元204用于将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;查询单元205用于通过预设时间查询预设队列中是否存在所述业务事件;第二获取单元206用于若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;处理单元207用于根据所述待处理业务信息对待处理业务进行业务处理。
在某些实施例,例如本实施例中,如图6所示,所述触发单元203包括第一判断单元2031、触发子单元2032、第二判断单元2033以及第一返回单元2034。
其中,第一判断单元2031用于通过所述预设行为方法的返回值判断调用所述预设行为方法是否成功;触发子单元2032用于若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;第二判断单元2033用于若调用所述预设行为方法失败,则判断当前调用次数是否小于预设重试调用次数;第一返回单元2034用于若所述当前调用次数小于所述预设重试调用次数,则返回执行根据所述预设状态调用所述预设状态对应的预设行为方法的步骤。
在某些实施例,例如本实施例中,如图7所示,所述存储单元204包括第一获取子单元2041及存储子单元2042。
其中,第一获取子单元2041用于根据所述业务事件对应的事件句柄获取对应的事件信息,其中,所述事件信息包括所述业务事件对应的业务事件ID及订单号;存储子单元2042用于将所述事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区。
在某些实施例,例如本实施例中,如图8所示,所述第二获取单元206包括拼接单元2061及第二获取子单元2062。
其中,拼接单元2061用于若所述预设队列中存在所述业务事件,则将所述订单号及所述业务事件ID拼接成查询信息;第一处理子单元2062用于根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库。
在某些实施例,例如本实施例中,如图9所示,所述第二获取子单元2062包括第一查找单元20621、第一执行单元20622、第二查找单元20623、第二执行单元20624以及第二返回单元20625。
其中,第一查找单元20621用于根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息;第一执行单元20622用于若在所述缓存中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;第二查找单元20623用于若在所述缓存中未找到到所述待处理业务信息,则根据所述查询信息和所述一一映射关系,在所述数据库中查找所述待处理业务信息;第二执行单元20624用于若在所述数据库中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;第二返回单元20625用于若在所述数据库中未找到所述待处理业务信息,则在预设重试次数和预设时间内返回执行根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息的步骤。
请参阅图10,图10是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备300为终端,终端可以是平板电脑、笔记本电脑和台式电脑等具有通信功能的电子设备。
参阅图10,该计算机设备300包括通过系统总线301连接的处理器302、存储器和网络接口305,其中,存储器可以包括非易失性存储介质303和内存储器304。
该非易失性存储介质303可存储操作系统3031和计算机程序3032。该计算机程序3032被执行时,可使得处理器302执行一种基于业务事件的业务处理方法。
该处理器302用于提供计算和控制能力,以支撑整个计算机设备300的运行。
该内存储器304为非易失性存储介质303中的计算机程序3032的运行提供环境,该计算机程序3032被处理器302执行时,可使得处理器302执行一种基于业务事件的业务处理方法。
该网络接口305用于与其它设备进行网络通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备300的限定,具体的计算机设备300可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器302用于运行存储在存储器中的计算机程序3032,以实现如下步骤:获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;根据所述预设状态调用所述预设状态对应的预设行为方法;若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;通过预设时间查询预设队列中是否存在所述业务事件;若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;根据所述待处理业务信息对待处理业务进行业务处理。
在某些实施例,例如本实施例中,处理器302在实现所述若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件步骤时,具体实现如下步骤:通过所述预设行为方法的返回值判断调用所述预设行为方法是否成功;若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;若调用所述预设行为方法失败,则判断当前调用次数是否小于预设重试调用次数;若所述当前调用次数小于所述预设重试调用次数,则返回执行根据所述预设状态调用所述预设状态对应的预设行为方法的步骤。
在某些实施例,例如本实施例中,处理器302在实现所述将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区步骤时,具体实现如下步骤:根据所述业务事件对应的事件句柄获取对应的事件信息,其中,所述事件信息包括所述业务事件对应的业务事件ID及订单号;将所述事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区。
在某些实施例,例如本实施例中,处理器302在实现所述若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息步骤时,具体实现如下步骤:若所述预设队列中存在所述业务事件,则将所述订单号及所述业务事件ID拼接成查询信息;根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库。
在某些实施例,例如本实施例中,处理器302在实现所述根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库步骤时,具体实现如下步骤:根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息;若在所述缓存中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;若在所述缓存中未找到到所述待处理业务信息,则根据所述查询信息和所述一一映射关系,在所述数据库中查找所述待处理业务信息;若在所述数据库中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;若在所述数据库中未找到所述待处理业务信息,则在预设重试次数和预设时间内返回执行根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息的步骤。
应当理解,在本申请实施例中,处理器302可以是中央处理单元(CentralProcessing Unit,CPU),该处理器302还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序。该计算机程序被处理器执行时使处理器执行如下步骤:获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;根据所述预设状态调用所述预设状态对应的预设行为方法;若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;通过预设时间查询预设队列中是否存在所述业务事件;若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;根据所述待处理业务信息对待处理业务进行业务处理。
在某些实施例,例如本实施例中,所述处理器在执行所述计算机程序而实现所述若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件步骤时,具体实现如下步骤:通过所述预设行为方法的返回值判断调用所述预设行为方法是否成功;若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;若调用所述预设行为方法失败,则判断当前调用次数是否小于预设重试调用次数;若所述当前调用次数小于所述预设重试调用次数,则返回执行根据所述预设状态调用所述预设状态对应的预设行为方法的步骤。
在某些实施例,例如本实施例中,所述处理器在执行所述计算机程序而实现所述将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区步骤时,具体实现如下步骤:根据所述业务事件对应的事件句柄获取对应的事件信息,其中,所述事件信息包括所述业务事件对应的业务事件ID及订单号;将所述事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区。
在某些实施例,例如本实施例中,所述处理器在执行所述计算机程序而实现所述若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息步骤时,具体实现如下步骤:通过预设查询方法查询预设队列中是否存在所述业务事件;若所述预设队列中存在所述业务事件,则将所述订单号及所述业务事件ID拼接成查询信息;根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库。
在某些实施例,例如本实施例中,所述处理器在执行所述计算机程序而实现所述根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库步骤时,具体实现如下步骤:根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息;若在所述缓存中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;若在所述缓存中未找到到所述待处理业务信息,则根据所述查询信息和所述一一映射关系,在所述数据库中查找所述待处理业务信息;若在所述数据库中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;若在所述数据库中未找到所述待处理业务信息,则在预设重试次数和预设时间内返回执行根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息的步骤。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,尚且本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种基于业务事件的业务处理方法,其特征在于,包括:
获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;
根据所述预设状态调用所述预设状态对应的预设行为方法,其中,所述预设状态与所述预设行为方法通过状态模式关联,所述状态模式为当一个对象的内在状态改变时允许改变其行为;
若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;
将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;
通过预设时间查询预设队列中是否存在所述业务事件;
若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;
根据所述待处理业务信息对待处理业务进行业务处理;
其中,所述将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区,包括:
根据所述业务事件对应的事件句柄获取对应的事件信息,其中,所述事件信息包括所述业务事件对应的业务事件ID及订单号;
将所述事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;
所述若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,包括:
若所述预设队列中存在所述业务事件,则将所述订单号及所述业务事件ID拼接成查询信息;
根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库。
2.根据权利要求1所述的方法,其特征在于,所述若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件,包括:
通过所述预设行为方法的返回值判断调用所述预设行为方法是否成功;
若调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件。
3.根据权利要求2所述的方法,其特征在于,所述通过所述预设行为方法的返回值判断调用所述预设行为方法是否成功之后,还包括:
若调用所述预设行为方法失败,则判断当前调用次数是否小于预设重试调用次数;
若所述当前调用次数小于所述预设重试调用次数,则返回执行根据所述预设状态调用所述预设状态对应的预设行为方法的步骤。
4.根据权利要求1所述的方法,其特征在于,所述根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库,包括:
根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息;
若在所述缓存中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤;
若在所述缓存中未找到所述待处理业务信息,则根据所述查询信息和所述一一映射关系,在所述数据库中查找所述待处理业务信息;
若在所述数据库中找到所述待处理业务信息,则执行根据所述待处理业务信息对待处理业务进行业务处理的步骤。
5.根据权利要求4所述的方法,其特征在于,所述根据所述查询信息和所述一一映射关系,在所述数据库中查找所述待处理业务信息之后,还包括:
若在所述数据库中未找到所述待处理业务信息,则在预设重试次数和预设时间内返回执行根据所述查询信息和所述一一映射关系,在所述缓存中查找所述待处理业务信息的步骤。
6.一种业务处理装置,其特征在于,包括:
第一获取单元,用于获取用户输入的待处理业务信息和所述待处理业务信息对应的预设状态;
确定单元,用于根据所述预设状态调用所述预设状态对应的预设行为方法,其中,所述预设状态与所述预设行为方法通过状态模式关联,所述状态模式为当一个对象的内在状态改变时允许改变其行为;
触发单元,用于若根据所述预设状态调用所述预设行为方法成功,则触发所述待处理业务信息对应的业务事件;
存储单元,用于将所述业务事件对应的事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;
查询单元,用于通过预设时间查询预设队列中是否存在所述业务事件;
第二获取单元,用于若所述预设队列中存在所述业务事件,则根据所述事件信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息;
处理单元,用于根据所述待处理业务信息对待处理业务进行业务处理;
其中,所述存储单元包括:
第一获取子单元,用于根据所述业务事件对应的事件句柄获取对应的事件信息,其中,所述事件信息包括所述业务事件对应的业务事件ID及订单号;
存储子单元,用于将所述事件信息和所述待处理业务信息建立一一映射关系并存储至预设存储区;
所述第二获取单元包括:
拼接单元,用于若所述预设队列中存在所述业务事件,则将所述订单号及所述业务事件ID拼接成查询信息;
第二获取子单元,用于根据所述查询信息和所述一一映射关系从所述预设存储区中获取所述待处理业务信息,其中,所述预设存储区包括缓存和数据库。
7.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-5中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现如权利要求1-5中任一项所述的方法。
CN202110211334.3A 2021-02-25 2021-02-25 基于业务事件的业务处理方法、装置、计算机设备及存储介质 Active CN112948434B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110211334.3A CN112948434B (zh) 2021-02-25 2021-02-25 基于业务事件的业务处理方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110211334.3A CN112948434B (zh) 2021-02-25 2021-02-25 基于业务事件的业务处理方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN112948434A CN112948434A (zh) 2021-06-11
CN112948434B true CN112948434B (zh) 2024-04-09

Family

ID=76246185

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110211334.3A Active CN112948434B (zh) 2021-02-25 2021-02-25 基于业务事件的业务处理方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112948434B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113609136B (zh) * 2021-08-26 2022-04-26 深圳市链融科技股份有限公司 业务编号稳定保持方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110070389A (zh) * 2019-03-29 2019-07-30 努比亚技术有限公司 一种业务推广统计方法、装置及计算机可读存储介质
CN110457342A (zh) * 2019-07-02 2019-11-15 网联清算有限公司 交易处理方法及装置
CN110599305A (zh) * 2019-09-16 2019-12-20 北京三快在线科技有限公司 业务处理方法、装置及存储介质
CN111144982A (zh) * 2019-12-20 2020-05-12 网联清算有限公司 订单状态转移方法、装置、电子设备和存储介质
CN111488382A (zh) * 2020-04-16 2020-08-04 北京思特奇信息技术股份有限公司 一种数据调用方法、系统及电子设备
CN111796946A (zh) * 2020-06-22 2020-10-20 深圳壹账通智能科技有限公司 数据处理方法、装置、设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110070389A (zh) * 2019-03-29 2019-07-30 努比亚技术有限公司 一种业务推广统计方法、装置及计算机可读存储介质
CN110457342A (zh) * 2019-07-02 2019-11-15 网联清算有限公司 交易处理方法及装置
CN110599305A (zh) * 2019-09-16 2019-12-20 北京三快在线科技有限公司 业务处理方法、装置及存储介质
CN111144982A (zh) * 2019-12-20 2020-05-12 网联清算有限公司 订单状态转移方法、装置、电子设备和存储介质
CN111488382A (zh) * 2020-04-16 2020-08-04 北京思特奇信息技术股份有限公司 一种数据调用方法、系统及电子设备
CN111796946A (zh) * 2020-06-22 2020-10-20 深圳壹账通智能科技有限公司 数据处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112948434A (zh) 2021-06-11

Similar Documents

Publication Publication Date Title
CN107679081B (zh) 信息修改方法、装置、计算机设备及计算机可读存储介质
US7685476B2 (en) Early notification of error via software interrupt and shared memory write
CN110837457B (zh) 任务管理方法、装置、电子设备及存储介质
US20050060526A1 (en) System and method for firmware to export pre-boot data into the operating system runtime environment
US10630399B2 (en) Testing distributed applications that have an established exchange in an advanced message queuing protocol (AMQP) message broker
CN112667382A (zh) 任务调度方法、装置、设备及存储介质
CN112948434B (zh) 基于业务事件的业务处理方法、装置、计算机设备及存储介质
CN114172829A (zh) 一种服务器健康监测方法、系统及计算设备
US11243979B1 (en) Asynchronous propagation of database events
KR20110037969A (ko) 모니터링 시스템에서의 메시지의 타겟화된 사용자 통지
CN112948551A (zh) 日志获取方法、装置、计算机设备及存储介质
US7092850B2 (en) Sensor signal debouncing
US6898732B1 (en) Auto quiesce
CN111367934A (zh) 数据一致性的检验方法、装置、服务器和介质
CN115269252A (zh) 应用程序故障处理方法、装置、设备及存储介质
US20220121434A1 (en) Prioritized non-active memory device update
CN114443383A (zh) 一种多路径对象链路状态检测方法、装置及存储介质
US20170322893A1 (en) Computing node to initiate an interrupt for a write request received over a memory fabric channel
US20090204728A1 (en) System and method for improving communications for systems having communications protocol enabled devices
US6957174B2 (en) Sensor signal debouncing
CN108958902B (zh) 图计算方法和系统
CN111427878A (zh) 数据监控告警方法、装置、服务器和存储介质
US20230236875A1 (en) Protocol exception handling external to deterministic code
CN110727537A (zh) 统一处理响应报文的方法、装置、计算机设备及存储介质
CN111352825A (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