CN112579325A - 一种业务对象的处理方法、装置、电子设备和存储介质 - Google Patents

一种业务对象的处理方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112579325A
CN112579325A CN202011602436.XA CN202011602436A CN112579325A CN 112579325 A CN112579325 A CN 112579325A CN 202011602436 A CN202011602436 A CN 202011602436A CN 112579325 A CN112579325 A CN 112579325A
Authority
CN
China
Prior art keywords
service
component
flow
service object
message
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
CN202011602436.XA
Other languages
English (en)
Other versions
CN112579325B (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.)
Shanghai Zhongyuan Network Co ltd
Original Assignee
Shanghai Zhongyuan Network 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 Shanghai Zhongyuan Network Co ltd filed Critical Shanghai Zhongyuan Network Co ltd
Priority to CN202011602436.XA priority Critical patent/CN112579325B/zh
Publication of CN112579325A publication Critical patent/CN112579325A/zh
Application granted granted Critical
Publication of CN112579325B publication Critical patent/CN112579325B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例提供了一种业务对象的处理方法和装置,其中,所述方法包括:获取业务对象中各服务对象之间的链路关系;根据链路关系生成业务对象的流程文件;将流程文件映射为各服务对象的流动组件,各流动组件通过接收和/或转发其他的流动组件的消息,以表示各服务对象的业务数据流转关系;根据各流动组件之间的消息接收关系和/或消息转发关系,将各流动组件作为业务对象的工作流,并按照工作流执行各服务对象。本发明实施例借助于工作流执行各服务对象,可以方便地梳理出业务对象的整体流程逻辑和各服务对象之间的依赖关系、业务数据流转关系等,可以解决现有的服务对象之间的交互不清晰的技术问题,达到提升服务对象之间的交互清晰度的效果。

Description

一种业务对象的处理方法、装置、电子设备和存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种业务对象的处理方法和装置,以及一种电子设备和一种计算机可读存储介质。
背景技术
随着计算机技术的快速发展,越来越多的业务实现了Serverless化,Serverless表示开发者不用过多地考虑服务器的问题,而是利用第三方服务器资源执行代码。Serverless是由开发者实现的服务端逻辑运行在无状态的计算容器中,它是由事件触发,完全被第三方管理。而且,服务对象的业务粒度越来越细,服务对象的职责也越来越单一,服务对象的内部逻辑高度内聚,业务清晰,有利于需求的迭代。
但是,服务对象之间的交互变得非常复杂,目前的服务对象之间的交互过程通过服务对象之间传递远程调用消息等实现。远程调用消息等很难被追踪,导致服务对象之间的交互不清晰,整体业务流程难梳理的问题。
发明内容
本发明实施例的目的在于提供一种业务对象的处理方法和装置,以及一种电子设备和一种计算机可读存储介质,将业务对象的流程文件和服务对象的流动组件相结合,通过工作流的形式体现服务对象之间的交互,可以更加清晰地掌握服务对象之间的交互过程。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种业务对象的处理方法,包括:获取业务对象中各服务对象之间的链路关系;根据所述链路关系生成所述业务对象的流程文件,所述流程文件表示各所述服务对象在所述业务对象中的触发顺序;将所述流程文件映射为各所述服务对象的流动组件,各所述流动组件通过接收和/或转发其他的所述流动组件的消息,以表示各所述服务对象的业务数据流转关系;根据各所述流动组件之间的消息接收关系和/或消息转发关系,将各所述流动组件作为所述业务对象的工作流,并按照所述工作流执行各所述服务对象。
可选地,所述将所述流程文件映射为各所述服务对象的流动组件,包括:将所述流程文件映射为触发组件,以及串行组件和/或并行组件,并对所述触发组件,以及所述串行组件和/或所述并行组件进行串联操作。
可选地,所述按照所述工作流执行各所述服务对象,包括:根据所述触发组件订阅来自服务发布事件的服务发布消息;根据所述触发组件转发所述服务发布消息至各所述服务对象中的第一个服务对象;从所述第一个服务对象开始,根据所述服务发布消息依次执行对应的所述串行组件或所述并行组件。
可选地,在所述将所述流程文件映射为各所述服务对象的流动组件之后,所述方法还包括:根据所述服务发布消息中携带的组件标识信息和所述流程文件的流程标识信息,建立所述流程文件与各所述流动组件之间的关联关系,并根据所述关联关系存储所述流程文件和各所述流动组件。
可选地,在所述按照所述工作流执行各所述服务对象之前,所述方法还包括:将所述流动组件应用于集群中,根据所述集群中的检测器检测所述流动组件的触发消息;当所述检测器检测到所述触发消息时,执行按照所述工作流执行各所述服务对象的步骤。
在本发明实施的第二方面,还提供了一种业务对象的处理装置,包括:获取模块,用于获取业务对象中各服务对象之间的链路关系;生成模块,用于根据所述链路关系生成所述业务对象的流程文件,所述流程文件表示各所述服务对象在所述业务对象中的触发顺序;映射模块,用于将所述流程文件映射为各所述服务对象的流动组件,各所述流动组件通过接收和/或转发其他的所述流动组件的消息,以表示各所述服务对象的业务数据流转关系;执行模块,用于根据各所述流动组件之间的消息接收关系和/或消息转发关系,将各所述流动组件作为所述业务对象的工作流,并按照所述工作流执行各所述服务对象。
可选地,所述映射模块,用于将所述流程文件映射为触发组件,以及串行组件和/或并行组件,并对所述触发组件,以及所述串行组件和/或所述并行组件进行串联操作。
可选地,所述执行模块,包括:消息订阅模块,用于根据所述触发组件订阅来自服务发布事件的服务发布消息;消息转发模块,用于根据所述触发组件转发所述服务发布消息至各所述服务对象中的第一个服务对象;组件执行模块,用于从所述第一个服务对象开始,根据所述服务发布消息依次执行对应的所述串行组件或所述并行组件。
可选地,所述装置还包括:关联模块,用于在所述映射模块将所述流程文件映射为各所述服务对象的流动组件之后,根据所述服务发布消息中携带的组件标识信息和所述流程文件的流程标识信息,建立所述流程文件与各所述流动组件之间的关联关系,并根据所述关联关系存储所述流程文件和各所述流动组件。
可选地,所述装置还包括:应用模块,用于在所述执行模块按照所述工作流执行各所述服务对象之前,将所述流动组件应用于集群中,根据所述集群中的检测器检测所述流动组件的触发消息;所述执行模块,用于当所述检测器检测到所述触发消息时,按照所述工作流执行各所述服务对象。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的业务对象的处理方法。
在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的业务对象的处理方法。
本发明实施例提供的业务对象的处理方法,通过采用生成业务对象的流程文件,以及,映射得到服务对象的流动组件的技术手段,根据各流动组件之间的消息接收关系和/或消息转发关系,将各流动组件作为业务对象的工作流,以便按照工作流执行各服务对象。借助于工作流执行各服务对象,可以方便地梳理出业务对象的整体流程逻辑和各服务对象之间的依赖关系、业务数据流转关系等,而且,工作流还可以作为业务对象的需求文档,减少了开发人员、产品人员了解业务需求的成本,提高了开发人员和产品人员的工作效率,可以解决现有的服务对象之间的交互不清晰的技术问题,达到提升服务对象之间的交互清晰度的效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例的一种业务对象的处理方法的步骤流程图。
图2为本发明实施例的一种基于JBPM和Knative的Serverless工作流的实现方案的流程示意图。
图3为本发明实施例的一种基于JBPM和Knative的Serverless工作流的实现方案的部署示意图。
图4为本发明实施例的一种业务对象的处理装置的结构示意图。
图5为本发明实施例的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例提出一种业务对象的处理方法,根据业务对象中各服务对象之间的链路关系,生成业务对象的流程文件,并将流程文件映射为对应的流动组件。各流动组件通过接收和/或转发其他流动组件的消息,以表示各服务对象的业务数据流转关系。根据各流动组件之间的消息接收关系和/或消息转发关系,将各流动组件作为业务对象的工作流,然后,按照工作流执行各服务对象。
如图1所示,示出了本发明实施例的一种业务对象的处理方法的步骤流程图。该业务对象的处理方法具体可以包括如下步骤。
步骤101,获取业务对象中各服务对象之间的链路关系。
在本发明的实施例中,业务对象可以为一种产品,如***、应用程序等。业务对象中可以包含多个服务对象,业务对象的执行过程,需要多个服务对象之间的业务交互。各服务对象之间的链路关系可以表示各服务对象在业务对象中的触发节点,以及,各触发节点之间的顺序关系、逻辑关系等等。
步骤102,根据链路关系生成业务对象的流程文件。
在本发明的实施例中,各服务对象之间的链路关系可以通过链路图的形式直观表现。流程文件可以理解为各服务对象之间的链路关系的计算机可识别文件。在实际应用中,流程文件可以为JBPM文件。JBPM是一套基于业务流程建模符号(Business ProcessModeling Notation,简称BPMN)的流程引擎。例如,业务对象M中存在5个基于Knative(一套开源的Serverless架构方案)的服务对象,分别为服务对象A、B、C、D、E。如图2所示,图2示出了业务对象M中各服务对象的链路图。图2中,各服务对象可以作为业务对象M的每个中间节点,业务对象M还包含开始节点和结束节点。服务对象A为位于开始节点之后的中间节点,服务对象B和C分别为位于服务对象A所在的中间节点之后的两个并列的中间节点,服务对象B所在的中间节点向后直接连接结束节点。服务对象C所在的中间节点向后连接判断节点,判断节点向后再连接服务对象D和E位于的两个并列的中间节点,服务对象D和E所在的中间节点向后均直接连接结束节点。根据上述各服务对象在业务对象M中的链路关系,可以生成如下流程文件:
Figure BDA0002869182940000051
Figure BDA0002869182940000061
上述流程文件可以为可扩展标记语言(Extensible Markup Language,简称XML)格式的文件。流程文件可以表示各服务对象在业务对象中的触发顺序,例如,服务对象A在其他服务对象之前触发,服务对象B和C并列触发,服务对象D和E在其他服务对象之后触发,而且,服务对象D和E并列触发。在生成流程文件的同时,还可以为流程文件生成对应的流程标识信息,流程标识信息用于唯一表示流程文件。
步骤103,将流程文件映射为各服务对象的流动组件。
在本发明的实施例中,各服务对象可以具有各自的流动组件,各流动组件可以通过接收和/或转发其他的流动组件的消息,以表示各服务对象的业务数据流转关系。而且,根据服务对象在业务对象中的触发顺序的不同,各服务对象的流动组件也可以互不相同。由于流程文件为表示业务对象的整个执行流程的文件,流程文件中包含了各服务对象在业务对象中的触发顺序,因此可以将流程文件映射为各服务对象的流动组件。
步骤104,根据各流动组件之间的消息接收关系和/或消息转发关系,将各流动组件作为业务对象的工作流,并按照工作流执行各服务对象。
在本发明的实施例中,各流动组件之间的消息接收关系表示一个流动组件从另一个流动组件接收消息,各流动组件之间的消息转发关系表示一个流动组件将另一个流动组件的消息转发到再一个流动组件。业务对象的工作流可以表示业务对象中各服务对象在业务对象的执行过程中的逻辑关系等等。按照工作流执行各服务对象,可以通过工作流体现各服务对象之间的业务数据流转关系,进而掌握业务数据流转到哪个服务对象。
本发明实施例提供的业务对象的处理方法,通过采用生成业务对象的流程文件,以及,映射得到服务对象的流动组件的技术手段,根据各流动组件之间的消息接收关系和/或消息转发关系,将各流动组件作为业务对象的工作流,以便按照工作流执行各服务对象。借助于工作流执行各服务对象,可以方便地梳理出业务对象的整体流程逻辑和各服务对象之间的依赖关系、业务数据流转关系等,而且,工作流还可以作为业务对象的需求文档,减少了开发人员、产品人员了解业务需求的成本,提高了开发人员和产品人员的工作效率,可以解决现有的服务对象之间的交互不清晰的技术问题,达到提升服务对象之间的交互清晰度的效果。
在本发明的一种示例性实施例中,流动组件可以包含但不限于:触发组件、串行组件、并行组件。在将流程文件映射为各服务对象的流动组件时,可以将流程文件映射为触发组件,以及串行组件和/或并行组件,并对触发组件,以及串行组件和/或并行组件进行串联操作。具体地,在将流程文件映射为各流动组件时,可以将JBPM的XML格式的流程文件中的各服务对象,映射为Knative下yaml(Yet Another Markup Language,yaml是一个可读性高,用来表达数据序列化的格式)格式的流动组件。上述映射的过程可以理解为JBPM与Knative相结合的过程,映射的结果即各服务对象的流动组件。在将各流动组件串联时,可以根据触发组件,以及串行组件和/或并行组件之间的消息接收关系,将发送消息与接收消息的触发组件和串行组件,或者,触发组件和并行组件,又或者,触发组件、串行组件和并行逐渐,按照先发送消息、后接收消息的顺序串联起来。和/或,可以根据触发组件,以及串行组件和/或并行组件之间的消息转发关系,将接收消息与转发消息的触发组件和串行组件,或者,触发组件和并行组件,又或者,触发组件、串行组件和并行逐渐,按照先接收消息、后转发消息的顺序串联起来。其中,触发组件用于订阅服务发布事件的服务发布消息,并转发服务发布消息至第一个服务对象。上述服务发布事件可以为缓存代理(broker)事件,该broker事件接收预先部署的流程触发服务发送的cloudEvent(一种统一的事件定义和描述规范)消息,该cloudEvent消息中可以包含上述流程文件的流程标识信息。串行组件和并行组件可以根据服务对象在业务对象中的触发顺序而生成,例如,针对上述服务对象A,服务对象A之前为业务对象M的开始节点,服务对象A之后为服务对象B和C,即服务对象A与服务对象B和C之间的触发顺序为串行顺序,则为服务对象A映射得到串行组件;针对上述服务对象B和C,服务对象B和C为业务对象M的两个并列的中间节点,则为服务对象B和C映射得到并行组件。
在本发明的一种示例性实施例中,在上述按照工作流执行各服务对象时,可以先根据触发组件订阅来自服务发布事件的服务发布消息,然后根据触发组件转发服务发布消息至第一个服务对象。从第一个服务对象开始,根据服务发布消息依次执行对应的串行组件或并行组件。例如,从上述服务对象A开始,执行串行组件,由服务对象A处理对应的服务内容,然后,串行组件转发服务对象A的处理结果至并行组件,由服务对象B和C处理对应的服务内容。
在本发明的一种示例性实施例中,在将流程文件映射为各服务对象的流动组件之后,还可以根据服务发布消息中携带的组件标识信息和流程文件的流程标识信息,建立流程文件与各流动组件之间的关联关系,并根据关联关系存储流程文件和各流动组件至数据库中。在实际应用中,若服务发布消息中携带的组件标识信息与流程文件的流程标识信息相同或者相对应,则可以建立流程文件与各流动组件之间的关联关系。若需要对业务对象进行调整,则可以根据流程标识信息直接从数据库中读取出流程文件,对读取出的流程文件进行修改。若需要对服务对象进行调整,则可以根据组件标识信息直接从数据库中读取出流动组件,对读取出的流动组件进行修改。而且,数据库中可以存储多个业务对象的流程文件和多个业务对象的各服务对象的流动组件。
基于上述关于一种业务对象的处理方法实施例的相关说明,下面介绍一种基于JBPM和Knative的Serverless工作流的实现方案。如图2所示,图2示出了一种基于JBPM和Knative的Serverless工作流的实现方案的流程示意图。部署流程触发服务对象,该流程触发服务对象可以发布包含流程文件的流程标识信息的cloudEvent消息,并发送cloudEvent消息至broker事件。利用预先生成的触发组件订阅broker事件的broker消息,该触发组件可以为trigger.yaml文件。触发组件生成触发消息,并传输触发消息至串行组件,该串行组件可以为sequence1.yaml文件,串行组件接收到触发消息,并由服务对象A处理。利用预先生成的并行组件将工作流转发至服务对象B和C,该并行组件可以为parallel1.yaml文件。并行组件将工作流转发至服务对象B,服务对象B处理后不再定义其他流程,工作流结束。并行组件将工作流转发至串行组件,该串行组件可以为sequence2.yaml文件,该串行组件将工作流转发至服务对象C,该串行组件转发工作流至并行组件,该并行组件可以为parallel2.yaml文件,由parallel2.yaml文件判断执行服务对象D还是执行服务对象E。该parallel2.yaml文件可以作为判断节点,判断节点根据业务处理结果生成对应的过滤服务对象,利用过滤服务对象判断业务处理结果是否满足过滤条件。如果满足针对服务对象D的过滤条件,则工作流转到服务对象D,如果满足针对服务对象E的过滤条件,则工作流转到服务对象E。在服务对象D和服务对象E之后不再定义其他流程,工作流结束。
如图3所示,图3示出了一种基于JBPM和Knative的Serverless工作流的实现方案的部署示意图。生成的JBPM流程文件可以存储至数据库中,而且,映射得到的Knative流动组件也可以存储至数据库中。在数据库中,JBPM流程文件与Knative流动组件可以建立关联关系。在按照工作流执行各服务对象之前,可以通过集群的应用程序接口可以将Knative流动组件应用于集群中,根据集群中的检测器检测Knative流动组件的触发消息,当检测器检测到触发消息时,在集群中根据各Knative流动组件执行各服务对象。本发明实施例通过将流动组件应用于集群中,可以对集群内多台终端上的业务对象,按照工作流执行各自的服务对象,以便集中了解集群内多台终端上的业务对象中,各服务对象之间的业务数据流转关系。
如图4所示,示出了本发明实施例的一种业务对象的处理装置的结构示意图。该业务对象的处理装置可以包括如下模块。
获取模块41,用于获取业务对象中各服务对象之间的链路关系;
生成模块42,用于根据所述链路关系生成所述业务对象的流程文件,所述流程文件表示各所述服务对象在所述业务对象中的触发顺序;
映射模块43,用于将所述流程文件映射为各所述服务对象的流动组件,各所述流动组件通过接收和/或转发其他的所述流动组件的消息,以表示各所述服务对象的业务数据流转关系;
执行模块44,用于根据各所述流动组件之间的消息接收关系和/或消息转发关系,将各所述流动组件作为所述业务对象的工作流,并按照所述工作流执行各所述服务对象。
在本发明的一种示例性实施例中,所述映射模块43,用于将所述流程文件映射为触发组件,以及串行组件和/或并行组件,并对所述触发组件,以及所述串行组件和/或所述并行组件进行串联操作。
在本发明的一种示例性实施例中,所述执行模块44,包括:
消息订阅模块,用于根据所述触发组件订阅来自服务发布事件的服务发布消息;
消息转发模块,用于根据所述触发组件转发所述服务发布消息至各所述服务对象中的第一个服务对象;
组件执行模块,用于从所述第一个服务对象开始,根据所述服务发布消息依次执行对应的所述串行组件或所述并行组件。
在本发明的一种示例性实施例中,所述装置还包括:
关联模块,用于在所述映射模块43将所述流程文件映射为各所述服务对象的流动组件之后,根据所述服务发布消息中携带的组件标识信息和所述流程文件的流程标识信息,建立所述流程文件与各所述流动组件之间的关联关系,并根据所述关联关系存储所述流程文件和各所述流动组件。
在本发明的一种示例性实施例中,所述装置还包括:
应用模块,用于在所述执行模块44按照所述工作流执行各所述服务对象之前,将所述流动组件应用于集群中,根据所述集群中的检测器检测所述流动组件的触发消息;
所述执行模块44,用于当所述检测器检测到所述触发消息时,按照所述工作流执行各所述服务对象。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信,
存储器53,用于存放计算机程序;
处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:
获取业务对象中各服务对象之间的链路关系;根据所述链路关系生成所述业务对象的流程文件,所述流程文件表示各所述服务对象在所述业务对象中的触发顺序;将所述流程文件映射为各所述服务对象的流动组件,各所述流动组件通过接收和/或转发其他的所述流动组件的消息,以表示各所述服务对象的业务数据流转关系;根据各所述流动组件之间的消息接收关系和/或消息转发关系,将各所述流动组件作为所述业务对象的工作流,并按照所述工作流执行各所述服务对象。
在所述将所述流程文件映射为各所述服务对象的流动组件时,将所述流程文件映射为触发组件,以及串行组件和/或并行组件,并对所述触发组件,以及所述串行组件和/或所述并行组件进行串联操作。
在所述按照所述工作流执行各所述服务对象时,根据所述触发组件订阅来自服务发布事件的服务发布消息;根据所述触发组件转发所述服务发布消息至各所述服务对象中的第一个服务对象;从所述第一个服务对象开始,根据所述服务发布消息依次执行对应的所述串行组件或所述并行组件。
在所述将所述流程文件映射为各所述服务对象的流动组件之后,根据所述服务发布消息中携带的组件标识信息和所述流程文件的流程标识信息,建立所述流程文件与各所述流动组件之间的关联关系,并根据所述关联关系存储所述流程文件和各所述流动组件。
在所述按照所述工作流执行各所述服务对象之前,将所述流动组件应用于集群中,根据所述集群中的检测器检测所述流动组件的触发消息;当所述检测器检测到所述触发消息时,执行按照所述工作流执行各所述服务对象的步骤。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的业务对象的处理方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的业务对象的处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种业务对象的处理方法,其特征在于,包括:
获取业务对象中各服务对象之间的链路关系;
根据所述链路关系生成所述业务对象的流程文件,所述流程文件表示各所述服务对象在所述业务对象中的触发顺序;
将所述流程文件映射为各所述服务对象的流动组件,各所述流动组件通过接收和/或转发其他的所述流动组件的消息,以表示各所述服务对象的业务数据流转关系;
根据各所述流动组件之间的消息接收关系和/或消息转发关系,将各所述流动组件作为所述业务对象的工作流,并按照所述工作流执行各所述服务对象。
2.根据权利要求1所述的方法,其特征在于,所述将所述流程文件映射为各所述服务对象的流动组件,包括:
将所述流程文件映射为触发组件,以及串行组件和/或并行组件,并对所述触发组件,以及所述串行组件和/或所述并行组件进行串联操作。
3.根据权利要求2所述的方法,其特征在于,所述按照所述工作流执行各所述服务对象,包括:
根据所述触发组件订阅来自服务发布事件的服务发布消息;
根据所述触发组件转发所述服务发布消息至各所述服务对象中的第一个服务对象;
从所述第一个服务对象开始,根据所述服务发布消息依次执行对应的所述串行组件或所述并行组件。
4.根据权利要求3所述的方法,其特征在于,在所述将所述流程文件映射为各所述服务对象的流动组件之后,所述方法还包括:
根据所述服务发布消息中携带的组件标识信息和所述流程文件的流程标识信息,建立所述流程文件与各所述流动组件之间的关联关系,并根据所述关联关系存储所述流程文件和各所述流动组件。
5.根据权利要求1至4中任一项所述的方法,其特征在于,在所述按照所述工作流执行各所述服务对象之前,所述方法还包括:
将所述流动组件应用于集群中,根据所述集群中的检测器检测所述流动组件的触发消息;
当所述检测器检测到所述触发消息时,执行按照所述工作流执行各所述服务对象的步骤。
6.一种业务对象的处理装置,其特征在于,包括:
获取模块,用于获取业务对象中各服务对象之间的链路关系;
生成模块,用于根据所述链路关系生成所述业务对象的流程文件,所述流程文件表示各所述服务对象在所述业务对象中的触发顺序;
映射模块,用于将所述流程文件映射为各所述服务对象的流动组件,各所述流动组件通过接收和/或转发其他的所述流动组件的消息,以表示各所述服务对象的业务数据流转关系;
执行模块,用于根据各所述流动组件之间的消息接收关系和/或消息转发关系,将各所述流动组件作为所述业务对象的工作流,并按照所述工作流执行各所述服务对象。
7.根据权利要求6所述的装置,其特征在于,所述映射模块,用于将所述流程文件映射为触发组件,以及串行组件和/或并行组件,并对所述触发组件,以及所述串行组件和/或所述并行组件进行串联操作。
8.根据权利要求7所述的装置,其特征在于,所述执行模块,包括:
消息订阅模块,用于根据所述触发组件订阅来自服务发布事件的服务发布消息;
消息转发模块,用于根据所述触发组件转发所述服务发布消息至各所述服务对象中的第一个服务对象;
组件执行模块,用于从所述第一个服务对象开始,根据所述服务发布消息依次执行对应的所述串行组件或所述并行组件。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的方法。
CN202011602436.XA 2020-12-29 2020-12-29 一种业务对象的处理方法、装置、电子设备和存储介质 Active CN112579325B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011602436.XA CN112579325B (zh) 2020-12-29 2020-12-29 一种业务对象的处理方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011602436.XA CN112579325B (zh) 2020-12-29 2020-12-29 一种业务对象的处理方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN112579325A true CN112579325A (zh) 2021-03-30
CN112579325B CN112579325B (zh) 2024-06-21

Family

ID=75144338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011602436.XA Active CN112579325B (zh) 2020-12-29 2020-12-29 一种业务对象的处理方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN112579325B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113626167A (zh) * 2021-08-11 2021-11-09 京东科技控股股份有限公司 线程控制方法、装置、设备及计算机存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050066304A1 (en) * 2003-09-11 2005-03-24 Captaris, Inc. Custom and customizable components, such as for workflow applications
US20060070025A1 (en) * 2004-09-30 2006-03-30 Microsoft Corporation Workflow schedule authoring tool
CN105045802A (zh) * 2015-05-22 2015-11-11 杭州亿方云网络科技有限公司 一种消息驱动的多类型文件预览***
CN110609675A (zh) * 2018-06-14 2019-12-24 中兴通讯股份有限公司 一种工作流建模方法、装置和计算机可读存储介质
CN110808855A (zh) * 2019-10-30 2020-02-18 中国工商银行股份有限公司 互联网技术架构及管理方法、装置、电子设备和介质
CN111208992A (zh) * 2020-01-10 2020-05-29 深圳壹账通智能科技有限公司 ***调度工作流生成方法和***
CN111510468A (zh) * 2019-01-30 2020-08-07 杭州海康威视数字技术股份有限公司 计算任务的调度方法、装置、服务器及计算***

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050066304A1 (en) * 2003-09-11 2005-03-24 Captaris, Inc. Custom and customizable components, such as for workflow applications
US20060070025A1 (en) * 2004-09-30 2006-03-30 Microsoft Corporation Workflow schedule authoring tool
CN105045802A (zh) * 2015-05-22 2015-11-11 杭州亿方云网络科技有限公司 一种消息驱动的多类型文件预览***
CN110609675A (zh) * 2018-06-14 2019-12-24 中兴通讯股份有限公司 一种工作流建模方法、装置和计算机可读存储介质
CN111510468A (zh) * 2019-01-30 2020-08-07 杭州海康威视数字技术股份有限公司 计算任务的调度方法、装置、服务器及计算***
CN110808855A (zh) * 2019-10-30 2020-02-18 中国工商银行股份有限公司 互联网技术架构及管理方法、装置、电子设备和介质
CN111208992A (zh) * 2020-01-10 2020-05-29 深圳壹账通智能科技有限公司 ***调度工作流生成方法和***

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
KATE EBY 等: "Business Process Modeling and Notation (BPMN) 101", Retrieved from the Internet <URL:https://www.smartsheet.com/beginners-guide> *
吴亚锋;谭文安;: "基于Petri网关联矩阵的流程模型间距离计算方法", 计算机与数字工程, no. 03 *
唐华云;郭芬;桑英硕;: "工作流管理平台的设计及其在自助服务中的应用", 计算机***应用, no. 07, 15 July 2016 (2016-07-15) *
李国栋等: "基于Petri网的组件化工作流模型研究", 微计算机信息, pages 1 - 2 *
邹少军;: "基于Petri网的工作流模型构建", 微计算机信息, no. 21 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113626167A (zh) * 2021-08-11 2021-11-09 京东科技控股股份有限公司 线程控制方法、装置、设备及计算机存储介质

Also Published As

Publication number Publication date
CN112579325B (zh) 2024-06-21

Similar Documents

Publication Publication Date Title
CN108322351B (zh) 生成拓扑图的方法和装置、故障确定方法和装置
CN111752799A (zh) 一种业务链路跟踪方法、装置、设备及储存介质
CN111381987A (zh) 一种消息处理方法、装置、电子设备及介质
CN110765422A (zh) 一种参数校验方法和装置
CN111782546B (zh) 一种基于机器学习的自动接口测试方法及装置
CN112905323B (zh) 数据处理方法、装置、电子设备及存储介质
CN110928934A (zh) 一种用于业务分析的数据处理方法和装置
CN112579325B (zh) 一种业务对象的处理方法、装置、电子设备和存储介质
CN111443920B (zh) 一种框架迁移方法及装置
CN110309028B (zh) 监控信息获取方法、服务监控方法、装置及***
CN111767161A (zh) 远程调用深度识别方法、装置、计算机设备及可读存储介质
CN114936245B (zh) 一种多源异构数据的集成和处理方法及装置
CN115580647A (zh) 一种服务调用链路追踪方法、***及电子设备
CN113704203A (zh) 一种日志文件的处理方法及装置
CN115185841A (zh) ***重构测试方法、装置、设备及存储介质
CN114443343A (zh) 一种服务接口反馈异常信息方法、装置、设备、存储介质
CN111884932A (zh) 一种链路确定方法、装置、设备和计算机可读存储介质
CN113760693A (zh) 用于微服务***的本地调试的方法和装置
CN113778886B (zh) 一种测试用例的处理方法和装置
CN113114612B (zh) 分布式***调用链的确定方法和装置
CN112579553B (zh) 用于记录信息的方法和装置
CN116414427A (zh) 产品发布方法、装置、设备及存储介质
CN113055443B (zh) 一种资源数据部署方法、装置、设备和存储介质
CN117453665A (zh) 一种数据处理方法、装置、设备及存储介质
CN111324846B (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