CN102650953A - 并发优化的bpmn组合服务执行引擎及方法 - Google Patents
并发优化的bpmn组合服务执行引擎及方法 Download PDFInfo
- Publication number
- CN102650953A CN102650953A CN2011100476423A CN201110047642A CN102650953A CN 102650953 A CN102650953 A CN 102650953A CN 2011100476423 A CN2011100476423 A CN 2011100476423A CN 201110047642 A CN201110047642 A CN 201110047642A CN 102650953 A CN102650953 A CN 102650953A
- Authority
- CN
- China
- Prior art keywords
- bpmn
- execution
- unit
- assignment file
- flow process
- 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
Links
Images
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
- G06Q10/00—Administration; Management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Exchange Systems With Centralized Control (AREA)
Abstract
本发明提供一种并发优化的BPMN组合服务执行引擎及方法,该并发优化的BPMN组合服务执行引擎包括服务接口模块、任务管理模块、解析执行模块和监控模块,服务接口模块用于根据接收到的报文文件,获得业务流程描述文件和输入参数信息;任务管理模块用于对业务流程描述文件进行分片,生成流程分片文件;解析执行模块包括任务接收单元、流程解析单元、实例执行单元、图元解析单元和自适应单元;监控模块,包括运行时监控单元,用于根据执行结果,对数据库进行访问。本发明提供的并发优化的BPMN组合服务执行引擎及方法,提高了BPMN组合服务执行引擎部署的灵活性和并发能力。
Description
技术领域
本发明涉及计算机组合服务技术,尤其涉及一种并发优化的BPMN组合服务执行引擎及方法。
背景技术
随着Internet和网络技术的快速发展,面向服务体系结构SOA等网络化服务软件模式得到了广泛应用,特别是Web服务作为SOA的最佳实践,极大的推动了SOA在金融、电信、电子商务等领域的发展。在实际的业务应用中独立的Web服务功能有限,不可能完成复杂的业务需求,一些多方参与的复杂业务流程需要集成已存在的Web服务形成更高级服务组合来完成。Web服务组合作为实现灵活的跨组织应用集成和资源共享的核心技术得到了许多研究机构的共同关注,成为新兴的研究热点。
组合服务建模和服务的执行,是服务组合生命周期中的两个重要组成部分。在业务建模阶段,业务分析人员通常使用各种流程建模语言描述业务流程,进行组合服务建模。目前常见的流程建模语言包括面向设计的语言(如BPMN、WS-CDL)和面向执行的语言(如BPEL、XPDL)等。业务流程建模标记(Business Process Modeling Notation,简称BPMN)是由业务流程管理计划组织(Business Process Management Initiative,简称BPMI)提出的用类似流程图的形式描述业务流程的标准,目前由对象管理组织(ObjectManagement Group,简称OMG)来维护管理。
可以通过BPMN的建模方式对商业业务流程进行建模并且将其绑定成为组合服务,通过BPMN的组合服务执行引擎驱动建模产生的业务流程按序执行,其实质为将业务流程转换为组合服务并驱动其按照建模人员的要求执行。常见的BPMN组合服务执行方法是将BPMN建模图元转换为XML SCHEMA文件,通过解析XML文件获得业务流程的执行顺序并且驱动其组合服务的按序执行,同时在执行过程中需要提供监控端口来不间断地监控业务流程的执行状况。
在SOA体系中,由于网络环境是松散耦合的,同时也是跨组织跨平台应用集成的,现有BPMN组合服务执行方法在实际应用中至少存在以下缺陷:
一、引擎部署不够灵活
组合服务执行引擎大多为本地程序或者插件形式,这样就导致其部署可能会依赖于某种平台并且部署实施相对比较复杂。当组合服务执行引擎包括多个松耦合模块,例如监控模块,需要考虑多个松耦合模块能否进行自适应的跨环境部署。
二、并发能力有限
没有考虑并发能力的因素,需要借鉴传统软件应用中的一些并发解决方法来提高系统的并发能力,同时BPMN组合服务执行方法可能涉及到不同服务交互的问题,这样的同步调用也有可能导致并发能力的下降。
发明内容
本发明提供一种并发优化的BPMN组合服务执行引擎及方法,以提高BPMN组合服务执行引擎部署的灵活性和并发能力。
本发明提供一种并发优化的BPMN组合服务执行引擎,包括:
服务接口模块,用于根据接收到的报文文件,获得业务流程描述文件和输入参数信息,并将所述业务流程描述文件和所述输入参数信息发送;
任务管理模块,用于接收所述服务接口模块发送的所述业务流程描述文件和所述输入参数信息,对所述业务流程描述文件进行分片,生成流程分片文件,根据所述流程分片文件和所述输入参数信息生成任务文件,并根据所述流程分片文件将所述任务文件发送;
解析执行模块,包括任务接收单元、流程解析单元、实例执行单元、图元解析单元和自适应单元;
所述任务接收单元,用于接收所述任务管理模块发送的所述任务文件;
所述流程解析单元,用于对所述任务接收单元接收的所述任务文件中的所述流程分片文件进行解析,获得执行顺序,并生成对象模型;
所述实例执行单元,用于按照所述执行顺序,根据所述任务文件中的所述输入参数信息和所述图元解析单元中存储的解析执行方法,调用线程执行所述流程解析单元生成的所述对象模型,并产生执行结果;
所述自适应单元,用于判断获知所述任务接收单元中的所述任务文件的数量小于预设值时,采用Web服务调用方式调用监控模块,并向所述监控模块发送所述实例执行单元产生的所述执行结果;否则,采用本地进程异步调用方式调用所述监控模块,并向所述监控模块发送所述执行结果;
监控模块,包括运行时监控单元,所述运行时监控单元用于根据所述执行结果,对数据库进行访问。
如上所述的并发优化的BPMN组合服务执行引擎,其中,
所述任务接收单元包括任务池,所述任务池用于将多个所述任务文件进行排序,并根据预设顺序向所述流程解析单元提供所述任务文件。
如上所述的并发优化的BPMN组合服务执行引擎,其中,所述解析执行模块包括:
线程池,用于为所述实例执行单元分配空闲线程。
如上所述的并发优化的BPMN组合服务执行引擎,其中,所述监控模块还包括:
数据库连接池,用于存储所述数据库的链接,并对所述链接进行分配。
如上所述的并发优化的BPMN组合服务执行引擎,其中,所述监控模块还包括:
所述服务接口模块包括服务接口、报文转换单元和请求单元;
所述报文转换单元用于对所述服务接口接收的所述报文进行转换,以获得所述业务流程描述文件和所述输入参数信息;
所述请求单元用于将所述业务流程描述文件和所述输入参数信息发送。
如上所述的并发优化的BPMN组合服务执行引擎,其中,所述任务管理模块包括:
接收单元,用于接收所述服务接口模块发送的所述业务流程描述文件和所述输入参数信息;
分片单元,用于对所述接收单元接收到的所述业务流程描述文件进行分片,生成流程分片文件;
任务文件生成单元,用于根据所述流程分片文件和所述输入参数信息生成任务文件;
流程调度单元,用于根据所述流程分片文件进行流程调度,并将所述任务文件发送。
本发明提供一种并发优化的BPMN组合服务执行方法,包括:
根据接收到的报文文件,获得业务流程描述文件和输入参数信息;
对所述业务流程描述文件进行分片,生成流程分片文件,根据所述流程分片文件和所述输入参数信息生成任务文件,并根据所述流程分片文件将所述任务文件发送;
对接收到的所述任务文件中的所述流程分片文件进行解析,获得执行顺序,并生成对象模型;
按照所述执行顺序,根据所述任务文件中的所述输入参数信息和所述图元解析单元中存储的解析执行方法,调用线程执行所述对象模型,并产生执行结果;
判断获知接收到的所述任务文件的数量小于预设值时,采用Web服务调用方式调用监控服务,并发送所述执行结果;否则,采用本地进程异步调用方式调用所述监控服务,并发送所述执行结果;
根据所述执行结果,对数据库进行访问。
如上所述的并发优化的BPMN组合服务执行方法,其中,所述对接收到的所述任务文件中的所述流程分片文件进行解析,具体为:
按照预设顺序对接收到的所述任务文件中的所述流程分片文件进行解析。
如上所述的并发优化的BPMN组合服务执行方法,其中,所述调用线程执行所述对象模型,具体为:
向线程池请求空闲线程,所述线程池根据线程分配状况分配线程,以执行所述对象模型。
如上所述的并发优化的BPMN组合服务执行方法,其中,所述对数据库进行访问,具体为:
向数据库连接池请求数据库链接,根据数据库连接池分配的所述数据库链接对所述数据库进行访问。
由上述技术方案可知,本发明提供的并发优化的BPMN组合服务执行引擎及方法,可以实现对BPMN组合服务的解析执行,且在进行监控服务调用时,可以根据不同的业务需求将松耦合的监控模块部署为多个服务,同时也能够绑定在一起成为一个服务,服务内部使用异步调用的方式保证运行,提高了BPMN组合服务执行引擎部署的灵活性。而且,当业务需求量大时,通过采用异步调用方式,提高了BPMN组合服务执行引擎部署的并发能力。
附图说明
图1为发明实施例一提供的并发优化的BPMN组合服务执行引擎结构示意图;
图2为本发明实施例二提供的并发优化的BPMN组合服务执行引擎结构示意图;
图3为本发明实施例三提供的并发优化的BPMN组合服务执行方法流程图。
附图标记:
11-服务接口模块; 12-任务管理模块; 13-解析执行模块;
14-监控模块; 131-任务接收单元; 132-流程解析单元;
133-实例执行单元; 134-图元解析单元; 135-自适应单元;
141-运行时监控单元; 15-数据库; 136-任务池;
137-线程池; 142-数据库连接池; 111-报文转换单元;
112-请求单元; 121-接收单元; 122-分片单元;
123-任务文件生成单元; 124-流程调度单元。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述。需要说明的是,在附图或说明书中,相似或相同的元件皆使用相同的附图标记。
实施例一
图1为发明实施例一提供的并发优化的BPMN组合服务执行引擎结构示意图,如图1所示,该并发优化的BPMN组合服务执行引擎包括服务接口模块11、任务管理模块12、解析执行模块13和监控模块14。服务接口模块11用于根据接收到的报文文件,获得业务流程描述文件和输入参数信息,并将业务流程描述文件和输入参数信息发送。在实际应用中,服务接口模块11首先接收报文文件,报文文件具体可以为外部的服务请求消息,该服务请求消息可以为简单对象访问协议(Simple Object Access Protocol,简称SOAP)消息。业务流程描述文件具体可以为一二级制形式的XLM描述文件,输入参数信息具体为用户进行Web服务调用时输入的必要的参数信息。任务管理模块12用于接收服务接口模块11发送的业务流程描述文件和输入参数信息,对业务流程描述文件进行分片,生成流程分片文件,根据流程分片文件和输入参数信息生成任务文件,并根据流程分片文件将任务文件发送。具体的,任务管理模块12按照BPMN规范中的池(pool)进行流程分片,生成流程分片文件,以实现一个流程分片文件被一个业务实体执行,不同pool的业务实体能够同时运行,根据流程分片文件找到流程执行的入口。解析执行模块13包括任务接收单元131、流程解析单元132、实例执行单元133、图元解析单元134和自适应单元135。任务接收单元131用于接收任务管理模块12发送的任务文件。流程解析单元132用于对任务接收单元131接收的任务文件中的流程分片文件进行解析,获得执行顺序,并生成对象模型。具体的,对象模型可以为java对象模型,流程分片文件中包含多个图元,将流程分片文件中的图元映射为java对象模型,所获得的java对象模型也为多个。解析获取执行顺序,就可以按照执行顺序对java对象模型进行执行。实例执行单元133用于按照执行顺序,根据任务文件中的输入参数信息和图元解析单元134中存储的解析执行方法,调用线程执行流程解析单元132生成的对象模型,并产生执行结果。具体的,一个图元对应的对象模型需要通过一个线程来执行,可以向发送线程请求,以进行线程调用。自适应单元135用于判断获知任务接收单元131中的任务文件的数量小于预设值时,采用web服务调用方式调用监控模块14,并向监控模块14发送实例执行单元133产生的执行结果;否则,采用本地进程异步调用方式调用监控模块14,并向监控模块14发送执行结果。监控模块14包括运行时监控单元141,运行时监控单元141用于根据执行结果,对数据库15进行访问。具体的可以根据执行结果对数据库15进行查询或者存储操作,以监控业务流程的运行情况以及结果信息。
该并发优化的BPMN组合服务执行引擎以web服务的形式部署在web服务容器中,可以简易地实现远程调用,而不需要本地部署,其工作过程具体可以为:用户通过Web服务描述语言(Web Services Description Language,简称)文档找到BPMN组合服务执行引擎的服务调用方式,具体的,该并发优化的BPMN组合服务执行引擎的服务接口模块11为用户提供服务说明文件。用户根据WSDL文档说明,构造合适的SOAP消息,并将其发送给服务接口模块11。服务接口模块11接收到SOAP消息,将其通过报文转换,转换成为运行层所需的参数信息,即获取业务流程描述文件和输入参数信息。服务接口模块11具体可以向任务管理模块12发送流程执行请求,任务管理模块12接收到流程执行请求后,对服务接口模块11获得的流程描述文件BPMN规范中的pool进行流程分片,生成流程分片文件,根据流程分片文件和输入参数信息生成任务文件,具体可以将流程分片文件和输入参数信息进行封装,以形成任务文件,任务文件具体可以为任务内存对象。根据流程分片文件找到流程执行的入口,将任务文件交给解析执行模块13去解析执行。解析执行模块13的任务接收单元131接收任务文件,具体的,任务管理模块12可以先向的任务接收单元131发送业务流程执行请求,任务接收单元131将接收到的任务文件提供给流程解析单元132,流程解析单元132对任务文件中的流程分片文件进行解析,将流程分片文件中的图元映射成java对象模型,并获取执行顺序。实例执行单元133根据执行顺序,请求系统线程对java对象模型进行执行,具体根据图元解析单元134中存储的解析执行方法来获取java对象模型的行为语义和属性,据此来执行,并产生执行结果。在解析执行过程中,每个线程执行完的java对象模型后都会将执行结果传递给监控模块14,自适应单元135可以根据任务接收单元131中的任务文件的数量,自适应选择监控模块14的调用方式。自适应单元135判断获知任务接收单元131中的任务文件的数量小于预设值时,即业务流程的执行请求较少时,采用web服务调用方式调用监控模块14,并向监控模块14发送实例执行单元133产生的执行结果;否则,业务流程需要提供高并发能力,采用本地进程异步调用方式调用监控模块14,并向监控模块14发送执行结果。自适应单元135还可以通过配置文件进行手动配置。当业务流程执行请求量比较大时,可以在配置文件的配置项中手动控制调用方式,以提高并发能力。监控模块14根据执行结果,对数据库15访问,进行数据查询或存储。
本实施例提供的并发优化的BPMN组合服务执行引擎,可以实现对BPMN组合服务的执行,且通过自适应单元135的设置,可以根据不同的业务需求将松耦合的监控模块14部署为多个服务,同时也能够绑定在一起成为一个服务,服务内部使用异步调用的方式保证运行,基于这样的环境进行软件的发布、发现、绑定和调用灵活,能够满足较大的用户业务请求量,提高了BPMN组合服务执行引擎部署的灵活性。而且,当业务需求量大时,通过采用异步调用方式,提高了BPMN组合服务执行引擎部署的并发能力。
实施例二
图2为本发明实施例二提供的并发优化的BPMN组合服务执行引擎结构示意图,如图2所示,在本实施例中,任务接收单元131具体可以包括任务池136,任务池136用于将多个任务文件进行排序,并根据预设顺序向流程解析单元132提供任务文件。通过任务池136对接收到的任务文件进行管理,任务池136中的任务文件可以以队列的形式进行存储,具体可以依照先入先出(First Input First Output,简称FIFO)的执行方式,将任务文件提供给流程解析单元132进行解析。还可以为任务文件设定优先权,根据优先权为流程解析单元132提供任务文件,任务池136的中任务文件的执行顺序可以按照实际的业务流程需要来设定,不以本实施例为限。
通过任务池136的设置,作为业务流程执行请求的缓冲,可以控制同时执行的业务流程执行请求数量,通过先将任务放在任务池136中,通过一定的顺序提供给流程解析单元132解析,保证BPMN组合服务执行引擎不会因为业务流程执行请求数量过多而陷入阻塞家私状态,提高了BPMN组合服务执行引擎的并发能力。
在本实施例中,解析执行模块13具体可以包括线程池137,线程池137用于为实例执行单元133分配空闲线程。线程池137对线程进行管理,当实例执行单元133需要调用线程来执行对象模型时,不需要直接向系统发送线程请求,而通过线程池137对实例执行单元133进行线程分配,将线程池137中的空闲线程提供给实例执行单元133,并将实例执行单元133释放的线程返还线程池137,避免了大量重复的现场申请以及释放,进一步提高BPMN组合服务执行引擎的并发能力。
在本实施例中,监控模块14还可以包括数据库连接池142,数据库连接池142用于存储数据库15的链接,并对链接进行分配。通过数据库连接池142管理数据库15的相应链接,当需要连接至数据库15时,统一从数据库连接池142中获取链接,当使用结束后,并不直接释放链接,而是将链接返回给数据库连接池142,以避免对数据库15的频繁访问造成的性能的急剧下降,进一步提高BPMN组合服务执行引擎的并发能力。
在本实施例中,服务接口模块11具体可以包括服务接口、报文转换单元111和请求单元112。报文转换单元111用于对服务接口接收的报文进行转换,以获得业务流程描述文件和输入参数信息,服务接口具体为Web服务接口。请求单元112用于将业务流程描述文件和输入参数信息发送。
在本实施例中,任务管理模块12具体可以包括接收单元121、分片单元122、任务文件生成单元123和流程调度单元124。接收单元121用于接收服务接口模块11发送的业务流程描述文件和输入参数信息,分片单元122用于对接收单元121接收到的业务流程描述文件进行分片,生成流程分片文件,任务文件生成单元123用于根据流程分片文件和输入参数信息生成任务文件,流程调度单元124用于根据流程分片文件进行流程调度,并将任务文件发送。
实施例三
图3为本发明实施例三提供的并发优化的BPMN组合服务执行方法流程图,该并发优化的BPMN组合服务执行方法包括:
步骤10、根据接收到的报文文件,获得业务流程描述文件和输入参数信息;
步骤20、对业务流程描述文件进行分片,生成流程分片文件,根据流程分片文件和输入参数信息生成任务文件,并根据流程分片文件将任务文件发送;
步骤30、对接收到的任务文件中的流程分片文件进行解析,获得执行顺序,并生成对象模型;
步骤40、按照执行顺序,根据任务文件中的输入参数信息和图元解析单元中存储的解析执行方法,调用线程执行对象模型,并产生执行结果;
步骤50、判断任务接收单元中的任务文件的数量是否小于预设值;
若判断获知接收到的任务文件的数量小于预设值,则执行步骤60、采用web服务调用方式调用监控服务,并发送执行结果;
否则,执行步骤70、采用本地进程异步调用方式调用监控服务,并发送执行结果;
步骤80、根据执行结果,对数据库进行访问。
本实施例提供的并发优化的BPMN组合服务执行方法,可以实现对BPMN组合服务的执行,且在进行监控服务调用时,可以根据不同的业务需求将松耦合的监控模块部署为多个服务,同时也能够绑定在一起成为一个服务,服务内部使用异步调用的方式保证运行,提高了BPMN组合服务执行引擎部署的灵活性。而且,当业务需求量大时,通过采用异步调用方式,提高了BPMN组合服务执行引擎部署的并发能力。
在本实施例中,对接收到的任务文件中的流程分片文件进行解析具体可以为:按照预设顺序对接收到的任务文件中的流程分片文件进行解析。具体可以通过任务池的设置对任务文件进行管理,将接收到的任务文件在任务池中进行存储,并按照一定的预设顺序对任务文件进行解析,具体可以按照FIFO的执行顺序,也可以通过设定优先权的方式,不以本实施例为限。
在本实施例中,调用线程执行对象模型具体可以为:向线程池请求空闲线程,线程池根据线程分配状况分配线程,以执行对象模型。通过向线程池请求线程来执行对象模型,避免了对系统大量重复的现场申请及释放,提高了系统的并发能力。
在本实施例中,对数据库进行访问具体为:向数据库连接池请求数据库链接,根据数据库连接池分配的数据库链接对数据库进行访问。由数据连接池统一对数据库链接进行管理,通过向数据连接池请求数据库链接,避免了由于请求过多造成的系统性能的下降。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种并发优化的BPMN组合服务执行引擎,其特征在于,包括:
服务接口模块,用于根据接收到的报文文件,获得业务流程描述文件和输入参数信息,并将所述业务流程描述文件和所述输入参数信息发送;
任务管理模块,用于接收所述服务接口模块发送的所述业务流程描述文件和所述输入参数信息,对所述业务流程描述文件进行分片,生成流程分片文件,根据所述流程分片文件和所述输入参数信息生成任务文件,并根据所述流程分片文件将所述任务文件发送;
解析执行模块,包括任务接收单元、流程解析单元、实例执行单元、图元解析单元和自适应单元;
所述任务接收单元,用于接收所述任务管理模块发送的所述任务文件;
所述流程解析单元,用于对所述任务接收单元接收的所述任务文件中的所述流程分片文件进行解析,获得执行顺序,并生成对象模型;
所述实例执行单元,用于按照所述执行顺序,根据所述任务文件中的所述输入参数信息和所述图元解析单元中存储的解析执行方法,调用线程执行所述流程解析单元生成的所述对象模型,并产生执行结果;
所述自适应单元,用于判断获知所述任务接收单元中的所述任务文件的数量小于预设值时,采用Web服务调用方式调用监控模块,并向所述监控模块发送所述实例执行单元产生的所述执行结果;否则,采用本地进程异步调用方式调用所述监控模块,并向所述监控模块发送所述执行结果;
监控模块,包括运行时监控单元,所述运行时监控单元用于根据所述执行结果,对数据库进行访问。
2.根据权利要求1所述的并发优化的BPMN组合服务执行引擎,其特征在于:
所述任务接收单元包括任务池,所述任务池用于将多个所述任务文件进行排序,并根据预设顺序向所述流程解析单元提供所述任务文件。
3.根据权利要求1所述的并发优化的BPMN组合服务执行引擎,其特征在于,所述解析执行模块包括:
线程池,用于为所述实例执行单元分配空闲线程。
4.根据权利要求1所述的并发优化的BPMN组合服务执行引擎,其特征在于,所述监控模块还包括:
数据库连接池,用于存储所述数据库的链接,并对所述链接进行分配。
5.根据权利要求1-4任一所述的并发优化的BPMN组合服务执行引擎,其特征在于,所述监控模块还包括:
所述服务接口模块包括服务接口、报文转换单元和请求单元;
所述报文转换单元用于对所述服务接口接收的所述报文进行转换,以获得所述业务流程描述文件和所述输入参数信息;
所述请求单元用于将所述业务流程描述文件和所述输入参数信息发送。
6.根据权利要求5所述的并发优化的BPMN组合服务执行引擎,其特征在于,所述任务管理模块包括:
接收单元,用于接收所述服务接口模块发送的所述业务流程描述文件和所述输入参数信息;
分片单元,用于对所述接收单元接收到的所述业务流程描述文件进行分片,生成流程分片文件;
任务文件生成单元,用于根据所述流程分片文件和所述输入参数信息生成任务文件;
流程调度单元,用于根据所述流程分片文件进行流程调度,并将所述任务文件发送。
7.一种并发优化的BPMN组合服务执行方法,其特征在于,包括:
根据接收到的报文文件,获得业务流程描述文件和输入参数信息;
对所述业务流程描述文件进行分片,生成流程分片文件,根据所述流程分片文件和所述输入参数信息生成任务文件,并根据所述流程分片文件将所述任务文件发送;
对接收到的所述任务文件中的所述流程分片文件进行解析,获得执行顺序,并生成对象模型;
按照所述执行顺序,根据所述任务文件中的所述输入参数信息和所述图元解析单元中存储的解析执行方法,调用线程执行所述对象模型,并产生执行结果;
判断获知接收到的所述任务文件的数量小于预设值时,采用Web服务调用方式调用监控服务,并发送所述执行结果;否则,采用本地进程异步调用方式调用所述监控服务,并发送所述执行结果;
根据所述执行结果,对数据库进行访问。
8.根据权利要求7所述的并发优化的BPMN组合服务执行方法,其特征在于,所述对接收到的所述任务文件中的所述流程分片文件进行解析,具体为:
按照预设顺序对接收到的所述任务文件中的所述流程分片文件进行解析。
9.根据权利要求7所述的并发优化的BPMN组合服务执行方法,其特征在于,所述调用线程执行所述对象模型,具体为:
向线程池请求空闲线程,所述线程池根据线程分配状况分配线程,以执行所述对象模型。
10.根据权利要求7所述的并发优化的BPMN组合服务执行方法,其特征在于,所述对数据库进行访问,具体为:
向数据库连接池请求数据库链接,根据数据库连接池分配的所述数据库链接对所述数据库进行访问。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110047642.3A CN102650953B (zh) | 2011-02-28 | 2011-02-28 | 并发优化的bpmn组合服务执行引擎及方法 |
PCT/CN2011/072683 WO2012116513A1 (zh) | 2011-02-28 | 2011-04-12 | 并发优化的bpmn组合服务执行引擎及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110047642.3A CN102650953B (zh) | 2011-02-28 | 2011-02-28 | 并发优化的bpmn组合服务执行引擎及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102650953A true CN102650953A (zh) | 2012-08-29 |
CN102650953B CN102650953B (zh) | 2014-05-07 |
Family
ID=46692961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110047642.3A Expired - Fee Related CN102650953B (zh) | 2011-02-28 | 2011-02-28 | 并发优化的bpmn组合服务执行引擎及方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102650953B (zh) |
WO (1) | WO2012116513A1 (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853718A (zh) * | 2012-11-28 | 2014-06-11 | 纽海信息技术(上海)有限公司 | 分片数据库访问方法及数据库系统 |
CN104133722A (zh) * | 2014-07-02 | 2014-11-05 | 北京邮电大学 | 一种实现多业务流程协作的方法及系统 |
CN105550268A (zh) * | 2015-12-10 | 2016-05-04 | 江苏曙光信息技术有限公司 | 大数据流程建模分析引擎 |
CN105787708A (zh) * | 2016-03-16 | 2016-07-20 | 浪潮通用软件有限公司 | 一种基于任务池的单据处理方法 |
CN106920034A (zh) * | 2017-02-07 | 2017-07-04 | 云南大学 | 一种挖掘bpmn编制流程并行性的方法及系统 |
CN109150957A (zh) * | 2018-06-29 | 2019-01-04 | 中译语通科技股份有限公司 | 一种微服务并发控制系统 |
CN109408134A (zh) * | 2017-08-16 | 2019-03-01 | 阿里巴巴集团控股有限公司 | 模型文件的处理方法、装置、系统以及处理设备 |
CN110377413A (zh) * | 2019-07-24 | 2019-10-25 | 上海金融期货信息技术有限公司 | 基于bpmn标准的分布式任务异步调度和监控的系统 |
CN110704183A (zh) * | 2019-09-18 | 2020-01-17 | 深圳前海大数金融服务有限公司 | 数据处理方法、系统及计算机可读存储介质 |
CN111585793A (zh) * | 2020-04-20 | 2020-08-25 | 南京大学 | 一种网络服务优化组合方法 |
CN112527251A (zh) * | 2020-11-30 | 2021-03-19 | 北京百度网讯科技有限公司 | 业务处理方法、装置、电子设备及存储介质 |
CN112540813A (zh) * | 2021-01-09 | 2021-03-23 | 浙江工业大学 | 一种基于工作流引擎的应用生成方法 |
CN114915622A (zh) * | 2022-05-31 | 2022-08-16 | 广东三维睿新科技有限公司 | 一种web端基于http的文件传输方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104699528B (zh) * | 2015-03-19 | 2018-05-04 | 神华集团有限责任公司 | 基于NetWeaver的排程方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101668047A (zh) * | 2009-09-30 | 2010-03-10 | 北京航空航天大学 | 组合服务描述语言自动生成方法及装置 |
CN101695080A (zh) * | 2009-09-30 | 2010-04-14 | 北京航空航天大学 | Bpmn组合服务的执行方法和执行装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7669187B2 (en) * | 2006-03-22 | 2010-02-23 | Sun Microsystems, Inc. | Pluggable debugging interface for graphical notation diagrams |
-
2011
- 2011-02-28 CN CN201110047642.3A patent/CN102650953B/zh not_active Expired - Fee Related
- 2011-04-12 WO PCT/CN2011/072683 patent/WO2012116513A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101668047A (zh) * | 2009-09-30 | 2010-03-10 | 北京航空航天大学 | 组合服务描述语言自动生成方法及装置 |
CN101695080A (zh) * | 2009-09-30 | 2010-04-14 | 北京航空航天大学 | Bpmn组合服务的执行方法和执行装置 |
Non-Patent Citations (1)
Title |
---|
班倩超 等: "基于BPMN的服务组合执行引擎的研究与实现", 《计算机应用研究》, vol. 26, no. 7, 31 July 2009 (2009-07-31), pages 2554 - 2558 * |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853718A (zh) * | 2012-11-28 | 2014-06-11 | 纽海信息技术(上海)有限公司 | 分片数据库访问方法及数据库系统 |
CN103853718B (zh) * | 2012-11-28 | 2018-05-08 | 北京京东尚科信息技术有限公司 | 分片数据库访问方法及数据库系统 |
CN104133722A (zh) * | 2014-07-02 | 2014-11-05 | 北京邮电大学 | 一种实现多业务流程协作的方法及系统 |
CN105550268A (zh) * | 2015-12-10 | 2016-05-04 | 江苏曙光信息技术有限公司 | 大数据流程建模分析引擎 |
CN105787708A (zh) * | 2016-03-16 | 2016-07-20 | 浪潮通用软件有限公司 | 一种基于任务池的单据处理方法 |
CN106920034A (zh) * | 2017-02-07 | 2017-07-04 | 云南大学 | 一种挖掘bpmn编制流程并行性的方法及系统 |
CN106920034B (zh) * | 2017-02-07 | 2021-04-30 | 西南林业大学 | 一种挖掘bpmn编制流程并行性的方法及系统 |
CN109408134A (zh) * | 2017-08-16 | 2019-03-01 | 阿里巴巴集团控股有限公司 | 模型文件的处理方法、装置、系统以及处理设备 |
CN109150957A (zh) * | 2018-06-29 | 2019-01-04 | 中译语通科技股份有限公司 | 一种微服务并发控制系统 |
CN110377413A (zh) * | 2019-07-24 | 2019-10-25 | 上海金融期货信息技术有限公司 | 基于bpmn标准的分布式任务异步调度和监控的系统 |
CN110377413B (zh) * | 2019-07-24 | 2023-03-03 | 上海金融期货信息技术有限公司 | 基于bpmn标准的分布式任务异步调度和监控的系统 |
CN110704183A (zh) * | 2019-09-18 | 2020-01-17 | 深圳前海大数金融服务有限公司 | 数据处理方法、系统及计算机可读存储介质 |
CN110704183B (zh) * | 2019-09-18 | 2021-01-08 | 深圳前海大数金融服务有限公司 | 数据处理方法、系统及计算机可读存储介质 |
CN111585793A (zh) * | 2020-04-20 | 2020-08-25 | 南京大学 | 一种网络服务优化组合方法 |
CN111585793B (zh) * | 2020-04-20 | 2021-04-30 | 南京大学 | 一种网络服务优化组合方法 |
CN112527251A (zh) * | 2020-11-30 | 2021-03-19 | 北京百度网讯科技有限公司 | 业务处理方法、装置、电子设备及存储介质 |
CN112540813A (zh) * | 2021-01-09 | 2021-03-23 | 浙江工业大学 | 一种基于工作流引擎的应用生成方法 |
CN112540813B (zh) * | 2021-01-09 | 2022-10-21 | 浙江工业大学 | 一种基于工作流引擎的应用生成方法 |
CN114915622A (zh) * | 2022-05-31 | 2022-08-16 | 广东三维睿新科技有限公司 | 一种web端基于http的文件传输方法 |
CN114915622B (zh) * | 2022-05-31 | 2024-01-30 | 广东三维睿新科技有限公司 | 一种web端基于http的文件传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102650953B (zh) | 2014-05-07 |
WO2012116513A1 (zh) | 2012-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102650953B (zh) | 并发优化的bpmn组合服务执行引擎及方法 | |
US9256413B2 (en) | Automatic identification of services | |
CN107562472B (zh) | 基于docker容器的微服务系统及方法 | |
CN104618433B (zh) | 一种基于eca规则的服务组合方法 | |
CN101694665B (zh) | 一种异构数据源数据查询方法及装置 | |
US8762933B2 (en) | Converting business process models to component models in a service oriented architecture domain | |
CN106648682B (zh) | 一种面向嵌入式系统开发的动态数据通用框架 | |
US10120886B2 (en) | Database integration of originally decoupled components | |
CN110764752A (zh) | 基于微服务架构实现Restful服务图形化服务编排的系统及其方法 | |
KR100880536B1 (ko) | 이기종 컴퓨팅 및 서비스 통합을 위한 오픈 프레임워크시스템 | |
CN102509197A (zh) | 一种工作流管理系统及工作流管理方法 | |
CN101873334A (zh) | 一种状态驱动的可执行业务流程执行方法 | |
CN109271561A (zh) | 一种图谱信息检索方法及装置 | |
CN101695080A (zh) | Bpmn组合服务的执行方法和执行装置 | |
CN101042648A (zh) | 为多网格应用提供统一界面的插件、系统及方法 | |
CN111125209A (zh) | 一种支持多元异构类型数据的接入配置系统 | |
CN104461893B (zh) | 数据处理方法与数据处理装置 | |
CN1799059A (zh) | 用于将提供商产品包自动转换成资源管理系统可执行的客户特定的服务环境定义的方法和系统 | |
EP1661083A1 (en) | A data processing method, system and computer program | |
WO2012083631A1 (zh) | Rfid系统的设备参数管理方法及rfid系统 | |
CN112394946A (zh) | 基于DevOps背景下的运维平台 | |
KR101592301B1 (ko) | 모바일 통합제어 서버 | |
CN112667205B (zh) | 停电编排微服务的开发方法、装置和计算机设备 | |
CN101739259A (zh) | 服务化软件生产方法和装置 | |
CN101834734A (zh) | 一种业务流程共享处理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140507 Termination date: 20170228 |
|
CF01 | Termination of patent right due to non-payment of annual fee |