并发优化的BPMN组合服务执行引擎及方法技术

技术编号:7718622 阅读:173 留言:0更新日期:2012-08-30 02:45
本发明专利技术提供一种并发优化的BPMN组合服务执行引擎及方法,该并发优化的BPMN组合服务执行引擎包括服务接口模块、任务管理模块、解析执行模块和监控模块,服务接口模块用于根据接收到的报文文件,获得业务流程描述文件和输入参数信息;任务管理模块用于对业务流程描述文件进行分片,生成流程分片文件;解析执行模块包括任务接收单元、流程解析单元、实例执行单元、图元解析单元和自适应单元;监控模块,包括运行时监控单元,用于根据执行结果,对数据库进行访问。本发明专利技术提供的并发优化的BPMN组合服务执行引擎及方法,提高了BPMN组合服务执行引擎部署的灵活性和并发能力。

【技术实现步骤摘要】

本专利技术涉及计算机组合服务技木,尤其涉及一种并发优化的BPMN组合服务执行引擎及方法
技术介绍
随着Internet和网络技术的快速发展,面向服务体系结构SOA等网络化服务软件模式得到了广泛应用,特别是Web服务作为SOA的最佳实践,极大的推动了 SOA在金融、电信、电子商务等领域的发展。在实际的业务应用中独立的Web服务功能有限,不可能完成复杂的业务需求,一些多方參与的复杂业务流程需要集成已存在的Web服务形成更高级服务组合来完成。Web服务组合作为实现灵活的跨组织应用集成和资源共享的核心技术得到了 许多研究机构的共同关注,成为新兴的研究热点。组合服务建模和服务的执行,是服务组合生命周期中的两个重要组成部分。在业务建模阶段,业务分析人员通常使用各种流程建模语言描述业务流程,进行组合服务建摸。目前常见的流程建模语言包括面向设计的语言(如BPMN、WS-CDL)和面向执行的语言(如BPEL> XPDL)等。业务流程建模标记(Business Process Modeling Notation,简称 BPMN)是由业务流程管理计划组织(Business Process Management Initiative,简称BPMI)提出的用类似流程图的形式描述业务流程的标准,目前由对象管理组织(ObjectManagementGroup,简称0MG)来维护管理。可以通过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组合服务的解析执行,且在进行监控服务调用时,可以根据不同的业务需求将松耦合的监控模块部署为多个服务,同时也能够绑定在一起成为一个服务,服务内部使本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种并发优化的BPMN组合服务执行引擎,其特征在于,包括 服务接ロ模块,用于根据接收到的报文文件,获得业务流程描述文件和输入參数信息,并将所述业务流程描述文件和所述输入參数信息发送; 任务管理模块,用于接收所述服务接ロ模块发送的所述业务流程描述文件和所述输入參数信息,对所述业务流程描述文件进行分片,生成流程分片文件,根据所述流程分片文件和所述输入參数信息生成任务文件,井根据所述流程分片文件将所述任务文件发送; 解析执行模块,包括任务接收単元、流程解析単元、实例执行単元、图元解析単元和自适应单元; 所述任务接收单元,用于接收所述任务管理模块发送的所述任务文件; 所述流程解析単元,用于对所述任务接收单元接收的所述任务文件中的所述流程分片文件进行解析,获得执行顺序,并生成对象模型; 所述实例执行单元,用于按照所述执行顺序,根据所述任务文件中的所述输入參数信息和所述图元解析単元中存储的解析执行方法,调用线程执行所述流程解析単元生成的所述对象模型,并产生执行结果; 所述自适应单元,用于判断获知所述任务接收单元中的所述任务文件的数量小于预设值时,采用Web服务调用方式调用监控模块,并向所述监控模块发送所述实例执行单元产生的所述执行結果;否则,采用本地进程异步调用方式调用所述监控模块,并向所述监控模块发送所述执行结果; 监控模块,包括运行时监控单元,所述运行时监控単元用于根据所述执行結果,对数据库进行访问。2.根据权利要求I所述的并发优化的BPMN组合服务执行引擎,其特征在于 所述任务接收单元包括任务池,所述任务池用于将多个所述任务文件进行排序,井根据预设顺序向所述流程解析単元提供所述任务文件。3.根据权利要求I所述的并发优化的BPMN组合服务执行引擎,其特征在于,所述解析执行模块包括 线程池,用于为所述实例执行单元分配空闲线程。4.根据权利要求I所述的并发优化的BPMN组合服务执行引擎,其特征在于,所述监控模块还包括 数据库连接池,用于存储所述数据库的链接,并对所述链接进行分配。5.根据权利要求1-4任一所述的并发优化的BPMN组合服务执行引擎,其特征在于,所述监控模块还包括 所述服务接ロ模块包括服务接ロ、报文转换单元和请求单元; ...

【专利技术属性】
技术研发人员:刘旭东李建欣方琨赵永望杨帆
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1