一种网格环境下支持网格资源动态集成和协作的方法转让专利

申请号 : CN200610000955.2

文献号 : CN101005396B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李厚福韩燕波梁英

申请人 : 中国科学院计算技术研究所

摘要 :

一种网格环境下支持网格资源动态集成和协作的方法,包括以下步骤:事件模板创建步骤;事件订阅步骤;监听器部署和配置步骤;事件发送步骤;网格资源搜索步骤;协作请求事件发送步骤;服务端驱动步骤;操作结果监听/发送步骤;客户端管理域确定步骤;以及客户端驱动步骤。根据本发明,实时整合了企业内部和外部的资源,实现了这些资源之间的动态集成和协作,以应对外部多变的市场需求。

权利要求 :

1.一种网格环境下支持网格资源动态集成和协作的方法,包括以下步骤:事件模板创建步骤,在订阅服务器上创建事件模板;

事件订阅步骤,服务端管理域的网格资源订阅感兴趣的事件;

监听器部署和配置步骤,客户端管理域和服务端管理域部署和配置网格资源操作行为监听器和外部事件监听器;

事件发送步骤,客户端网格资源操作行为监听器将监听到的事件发送给客户端网格资源协作中介;

网格资源搜索步骤,客户端网格资源协作中介根据在事件发送步骤中产生的事件,连线订阅服务器,搜索可协作的网格资源;

协作请求事件发送步骤,客户端网格资源协作中介根据在网格资源搜索步骤中发现的网格资源,处理在事件发送步骤中产生的事件,以便向所发现的网格资源所属的服务端管理域发送协作请求事件;

服务端驱动步骤,服务端管理域接收到协作请求事件后,将该事件交给本管理域的外部事件监听器,服务端外部事件监听器负责驱动相应的网格资源适配器,以实现对网格资源的操作;

操作结果监听/发送步骤,服务端网格资源操作行为监听器监听服务端网格资源的操作结果,并将监听到的响应事件发送给服务端网格资源协作中介;

客户端管理域确定步骤,服务端网格资源协作中介根据响应事件与协作响应事件之间的关系,确定协作响应事件的客户端管理域,并向客户端管理域发送协作响应事件;以及客户端驱动步骤,客户端管理域接收到协作响应事件后,将该事件交给本管理域的外部事件监听器,客户端外部事件监听器负责驱动相应的网格资源适配器,以实现对网格资源的操作,从而完成此次协作。

2.根据权利要求1所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于上述各种事件的主题和内容是有权限的业务用户根据实际需求在事件订阅服务器随时注册的。

3.根据权利要求1所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于上述各种事件是通过监听自治管理域内各种资源的操作行为而触发的,不同的资源和操作将触发不同类型的事件。

4.根据权利要求1所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述网格资源是在系统运行过程中根据间接寻址的方式发现的。

5.根据权利要求1到4之一所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述的网格资源包括自治管理域内的业务流程、服务和人员。

6.根据权利要求3或5所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述的自治管理域是企业、研究机构、政府机关、研究机构内部的部门、或政府机关内部的部门所拥有的业务信息系统,自治管理域对属于自己的网格资源具有所有控制权。

7.根据权利要求1所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述事件模板创建步骤包括三种事件模板创建方式:(1)从头创建新的事件模板:先给定事件模板的主题,再配置事件模板的内容;

(2)修改已有的事件模板:选择已有的事件模板进行继承,可在此基础上添加新的事件内容,并命名新的主题;和(3)复制并修改已有的事件模板:复制后,在原模板的基础上进行编辑修改。

8.根据权利要求1到7之一所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述事件订阅步骤包括以下子步骤:选择一个事件模板;

选择要订阅该事件的网格资源;

设置订阅的约束条件以及约束条件之间的关系;以及

选择保存到本地或发布到订阅服务器。

9.根据权利要求1到7之一所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于监听器部署和配置步骤包括以下子步骤:针对网格资源操作行为监听器:

选择一个监听的网格资源和事件模板;

设定要监听的网格资源的操作行为;以及

选择网格资源的操作行为产生的数据与事件内容之间的关系,针对外部事件监听器:选择一个监听的事件类型和将要触发的网格资源;以及

选择事件内容与网格资源的操作所需要的数据之间的关系。

10.根据权利要求9所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述事件监听器部署和配置步骤还包括以下子步骤:针对网络资源操作行为监听器,只针对特定的业务流程,设定监听的范围。

11.根据权利要求9所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述事件监听器部署和配置步骤还包括以下子步骤:针对外部事件监听器,只针对特定的业务流程,在对服务进行触发时,设定触发时服务所在的范围。

12.根据权利要求9到11之一所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述要监听的网格资源的操作行为包括“只监听输入”、“只监听输出”、“两者都监听”三种方式中的任一种。

13.根据权利要求1到7之一的网格环境下支持网格资源动态集成和协作的方法,其特征在于所述事件发送步骤包括以下子步骤:网格资源操作行为监听器监听网格资源在网格系统中的操作行为;

网格资源操作行为监听器根据网格资源的标识、操作行为类型和所在的范围搜索是否有对该资源的监听配置,根据资源操作产生的数据与事件内容之间的关系,将网格资源操作产生的数据提取后放入根据事件类型生成的事件实例中;

将生成的事件发送给所属管理域的事件处理中介。

14.根据权利要求1到7之一所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于网格资源搜索步骤包括以下子步骤:客户端网格资源协作中介提取监听到的事件的主题和内容;

根据事件的主题和内容与订阅服务器建立连接,并发出寻址请求;

订阅服务器根据事件主题定位到一个特定的网格资源订阅信息范围;

在所述一个特定的网格资源订阅信息范围中,根据事件的内容进行匹配,得到完全满足需求的结果,并将网格资源的标识和所在的管理域标识加入到一个订阅者集合中返回给客户端网格资源协作中介;以及客户端网格资源协作中介接收订阅服务器返回的结果,如果返回结果中具有可协作资源,则继续协作请求事件发送步骤的处理;否则,向客户端外部事件监听器发送异常信息。

15.根据权利要求1到7之一所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于协作请求事件发送步骤包括以下子步骤:如果订阅者集合中只有一个订阅者,则提取事件和订阅者信息,按订阅者信息中的网格资源标识和管理域标识设置事件中的目的地和订阅者属性,然后在数据库中记录网格资源与事件之间的触发关系并将事件发送到服务端管理域;

如果订阅者集合中包括多个订阅者,循环提取订阅服务器返回的订阅者集合中的订阅者信息,并生成一个同主题的新事件,将原事件的相关内容复制到新事件中并设置新事件与原事件之间的分解关系,然后按照以上步骤,将新事件和订阅者信息进行处理。

16.根据权利要求1到7之一所述的网格环境下支持网格资源动态集成和协作的方法,其特征在于服务端驱动步骤/客户端驱动步骤包括以下子步骤:提取协作请求事件/协作响应事件中的网格资源信息;

根据订阅者的类型和协作请求事件/协作响应事件的主题,在服务端外部事件监听配置中搜索监听配置;

根据订阅者的类型,选择不同的网格资源适配器:如果是业务流程,则选择业务流程适配器;如果是服务,则选择服务适配器;如果是人,则选择手工交互适配器;以及根据搜索到的监听配置,通过选定的网格资源适配器,驱动网格资源的运行。

17.根据权利要求1到7之一的网格环境下支持网格资源动态集成和协作的方法,其特征在于客户端管理域确定步骤包括以下子步骤:提取出响应事件的来源属性中的网格资源标识;

根据该网格资源标识找到驱动该资源的事件,并提取出该事件的来源;

将提取出的事件来源作为协作响应事件的客户端管理域。

说明书 :

技术领域

本发明涉及计算机网络技术领域,特别是一种网格环境下支持网格资源动态集成和协作的方法。

背景技术

网格作为一种计算和数据管理的基础设施,能为商业活动、政府行为、科学研究以及大众娱乐等诸多领域提供信息化支持。有些文献认为,网格要解决的问题被定义为“在个人、组织与资源动态形成的集合体中灵活、安全地协同资源共享”。这种观点强调了信息和协同的重要性。随着Web技术和相关标准的发展,网格技术发展到了第三个阶段,重点转移到分布式全球协作,即面向服务的方法和信息层的问题,更强调应用驱动下的松耦合的分布式计算以及自治机制带来的协作需求。发明人所在的课题组所研究开发的VINCA服务网格即是第三代网格的一个代表,其目的是解决组织内外的网格资源的共享、集成及协作。在这种情况下,网格资源不在仅仅是单纯的服务资源,还包括组织内的业务流程和人员。如何实现组织内及组织间多种形式的网格资源之间的松散集成和协作是一个急需解决的问题。
该问题又可以细分为如下问题:(1)网格资源具有多样性,如流程、服务和人员,是否需要屏蔽这些资源之间的差异?如何屏蔽?(2)由于网格环境具有高度动态性,随时有资源的加入和退出,造成了网格资源的不可预知性。应该如何对网格资源进行定位?从以上问题来看,以往的预先定义或写死在程序中的集成方式已经不再适合,有两个原因:(1)网格资源的不可预知性使得无法建立直接一一连接的集成;(2)即使能够预知,一一连接的集成方式也存在弊端:当资源及参与协作的组织数目发生变化时,其连接数量将出现指数级增长,使得管理异常复杂和繁琐。因此,需要新的方法来解决这个问题。
目前,工业界和学术界已经开始意识到上述问题的重要性,一些解决方案也逐渐被提出来。企业服务总线(ESB)是一种基于协作的分布式系统中间件,如Fiorano ESB,这种中间件实现了基于内容的事件路由。但在实现上并没有实现业务流程定义与事件监听的分离,要设置监听的事件时,必须重新修改流程;同时,没能提供一种支持流程、服务及人之间透明协作的机制。因此,其开放性和扩展性还有所欠缺。另外,这些方法并没有给出一个对表面上离散,实际上有关联的事件进行组织,用户很难根据一个事件找到与该事件相关的其他事件。同时,人们也开始利用面向服务的架构(SOA)来实现服务之间的互操作,这些解决方案从不同的角度出发解决了不同层次的服务协作问题,满足了不同层次的需求。IBM等公司提出的BPEL4WS实现了对具体WEB服务的组合,并通过内部的消息机制实现服务之间的互操作。同时,它还在规范上给出了实现多个BPEL应用之间进行协作的可能。这些互操作行为都需要在运行前设置好,无法在运行时改变。这造成了三个问题:(1)容错性差:一旦预先绑定的服务不可用,业务将无法继续运行;(2)由于采用预先绑定策略,无法使用最佳服务;(3)需要事先知道要绑定服务或应用的地址,在服务网格环境下,这将非常困难。因此,如果直接采用现有的SOA解决方案,将会造成:管理域内部和管理域之间充斥着千丝万缕的联系,在出现问题时,由于不能及时调整到可用的服务,将会造成业务的延迟。

发明内容

在企业计算和电子商务环境中,企业通常需要根据自身的业务需求,实时整合企业内部和外部的资源,实现这些资源之间的动态集成和协作,以应对外部多变的市场需求。本发明旨在:
(1)提供一种事件模型对事件与网格资源之间的关系进行描述。其中,事件主要用来表达网格资源之间的协作需求,描述多个管理域的资源之间进行协作时的所遵循的规范;而事件与网格资源之间的关系,则是驱动网格资源协作的基础。
(2)提出一种基于事件主题和内容的网格资源间接寻址算法,实现了网格资源的动态寻址。
(3)提出一种独立于网格资源模型的事件监听器模型,用于配置对网格资源操作行为的监听策略,从而可以对服务网格中各种资源的操作进行监听,触发响应事件。
(4)提出了基于统一接口的网格资源相关的资源适配器模型,实现对不同类型网格资源协作的驱动。
本发明的目的在于克服现有技术中存在的不足,提供一个网格环境下支持网格资源动态集成和协作的方法,提供一套建设大型分布式、即时软件集成系统的方法。
本发明支持业务人员自主定义和注册事件模板来描述与其他管理域协作时遵循的规范;通过订阅事件和监听管理域内部和外部事件,客户端网格资源协作中介基于事件定位网格资源和处理后发出协作请求,实现网格资源的动态集成和协作。下面对本发明涉及到的概念进行说明:
·事件模型:事件模型描述的是事件模板、事件的内涵以及事件模板之间、事件模板与事件之间、事件之间及事件与网格资源的关系。事件模型是为网格资源动态集成与协作中介中的间接寻址、事件处理以及网格资源之间的协作服务的。
·事件监听器模型:事件监听器模型是对网格资源操作行为和外部事件进行监听策略的描述和处理规范。本发明将事件监听器模型分为两种,一种是网格资源操作行为监听器模型,主要用来描述监听的对象、触发的事件及类型、参数的映射关系,目的是实现对管理域内网格资源操作行为的监听和触发事件;第二种是外部事件监听器模型,主要用来描述监听的事件、触发的网格资源、触发方式以及参数的映射关系,其目的是实现对外来事件的监听和驱动网格资源。在本发明中,提供了统一的接口以服务的形式开放给网格资源操作空间,实现运行时的监听器配置、部署及编织操作。
该方法能够跨管理域动态、实时地组织网格资源,实现动态的网格资源集成和协作,支持网格环境下管理域内不同部门或跨管理域的协同工作。本发明可以广泛应用于企业信息化、电子政务、电子商务以及科研问题求解环境等,支持跨组织边界的资源共享和动态协同工作。
根据本发明的方案,提出了一种网格环境下支持网格资源动态集成和协作的方法,包括以下步骤:事件模板创建步骤,在订阅服务器上创建事件模板;事件订阅步骤,服务端管理域的网格资源订阅感兴趣的事件;监听器部署和配置步骤,客户端管理域和服务端管理域部署和配置网格资源操作行为监听器和外部事件监听器;事件发送步骤,客户端网格资源操作行为监听器将监听到的事件发送给客户端网格资源协作中介;网格资源搜索步骤,客户端网格资源协作中介根据在事件发送步骤中产生的事件,连线订阅服务器,搜索可协作的网格资源;协作请求事件发送步骤,客户端网格资源协作中介根据在网格资源搜索步骤中发现的网格资源,处理在事件发送步骤中产生的事件,以便向所发现的网格资源所属的服务端管理域发送协作请求事件;服务端驱动步骤,服务端管理域接收到协作请求事件后,将该事件交给本管理域的外部事件监听器,服务端外部事件监听器负责驱动相应的网格资源适配器,以实现对网格资源的操作;操作结果监听/发送步骤,服务端网格资源操作行为监听器监听服务端网格资源的操作结果,并将监听到的响应事件发送给服务端网格资源协作中介;客户端管理域确定步骤,服务端网格资源协作中介根据响应事件与协作响应事件之间的关系,确定协作响应事件的客户端管理域,并向客户端管理域发送协作响应事件;以及客户端驱动步骤,客户端管理域接收到协作响应事件后,将该事件交给本管理域的外部事件监听器,客户端外部事件监听器负责驱动相应的网格资源适配器,以实现对网格资源的操作,从而完成此次协作。上述各种事件的主题和内容是业务用户可以根据实际需求在事件订阅中心随时注册的。
上述各种事件是通过事件监听器对自治管理域内各种资源的操作行为的监听触发的,不同的资源和操作将触发不同类型的事件。
所述动态是指网格资源之间的协作关系不是预先点对点地设定的,而是在系统运行过程中根据间接寻址的方式发现网格资源。
所述网格资源指的是自治管理域内的业务流程、服务或人员。
所述自治管理域可以是一个企业、研究机构、政府机关、研究机构内部的部门、或政府机关内部的部门,自治管理域对属于自己的网格资源具有所有控制权。
与现有技术相比,本发明的效果体现在:
1)网格资源之间的协作关系是在管理域内外的事件驱动下动态建立的。
2)基于发布/订阅模式以及基于事件主题和内容的网格资源间接寻址方法,支持网格环境下管理域和网格资源的动态加入和退出,满足了网格环境下的高度动态性的特点。
3)通过运行时的事件订阅和事件监听器的动态部署,支持网格资源运行时的动态调整。能够根据业务需求,即时对网格资源进行组合和调整。
4)支持多种网格资源类型,通过提供基于统一接口的网格资源相关的资源适配器模型,可以实现对不同类型网格资源协作的驱动,改善了网格系统的扩展性。
5)改善了网格资源的透明性,主要体现在网格资源访问地址的透明性、调用方式的透明性和网格资源类型的透明性,协作双方不必关心对方的具体形式,体现了网格的包容性。
本发明可以广泛应用于企业信息化、电子政务、电子商务以及科研问题求解环境等,支持跨组织边界的资源共享和动态协同工作,属于计算机应用领域。

附图说明

通过以下结合附图的详细描述,本发明的上述和其他方面、特征和优点将变得更加显而易见。附图中:
图1是本发明的网格资源动态集成和协作的方法工作原理图;
图2是本发明的网格环境下支持网格资源动态集成和协作的方法流程图;以及
图3是以产品供应过程为例的网格资源动态集成和协作示意图。

具体实施方式

下面结合附图对本发明作具体说明。应该指出,所描述的实施例仅是为了说明的目的,而不是对本发明范围的限制。
图1是根据本发明的网格资源动态集成和协作的方法的工作原理图,具体包括以下六个阶段:
(1)订阅:服务端管理域的网格资源参照事件模板对事件进行订阅,订阅结果表现为订阅信息;
(2)监听:客户端网格资源操作行为监听器监听到网格资源的操作行为生成事件,并发送给客户端网格资源协作中介;
(3)网格资源间接寻址:客户端网格资源协作中介接收到监听服务发来的事件后,通过网格资源间接寻址服务获得可协作的资源;
(4)请求:客户端网格资源协作中介根据查找结果向服务端协作中介与网格资源发出协作请求;
(5)驱动:服务端网格资源协作中介接收到外部事件后,将事件发送给服务端外部事件监听服务,监听服务根据监听配置确定网格资源的参数与事件内容之间的映射关系,并调用相应的网格资源适配器驱动网格资源。这里的驱动根据事件属性的不同具有两层含义:初始化一个新的网格资源实例和唤醒一个正处于等待状态的网格资源实例;
(6)服务端网格资源操作监听器监听到网格资源的操作后触发事件;
(7)服务端网格资源协作中介将事件作为响应事件发送到客户端协作中介;
(8)客户端外部事件监听器监听到事件后驱动发出请求的网格资源,完成一次协作过程。
图2是本发明的网格环境下支持网格资源动态集成和协作的方法流程图,其步骤如下:
在步骤SP1:在订阅服务器上创建事件模板。包括三种创建方法:
(1)从头创建新的事件模板:先给定事件模板的主题,再配置事件模板的内容;(2)修改已有的事件模板:选择已有的事件模板进行继承,可在此基础上添加新的事件内容,并命名新的主题;(3)复制并修改已有的事件模板:复制后,在原模板的基础上进行编辑修改。
在步骤SP2:服务端管理域的网格资源,订阅感兴趣的事件。可以包括以下子步骤:
(1)首先选择一个事件模板;(2)选择要订阅该事件的网格资源(业务流程、服务或人员);(3)设置订阅的约束条件以及约束条件之间的关系;(4)然后,可以选择保存到本地或发布到订阅服务器。
在步骤SP3:客户端和服务端管理域部署和配置网格资源操作行为监听器和外部事件监听器。可以包括以下子步骤:
部署和配置网格资源操作行为监听器的步骤为:(1)首先选择一个监听的网格资源和事件模板;(2)设定要监听的网格资源的操作行为(可以是“只监听输入”、“只监听输出”、“两者都监听”三种方式中的任一种);(3)选择网格资源的操作行为产生的数据与事件内容之间的关系;(4)在对服务进行监听时,设定监听的范围,该范围可以不限定,也可以只针对特定的一个或几个流程进行设定。
部署和配置外部事件监听器的步骤为:(1)首先选择一个监听的事件类型和将要触发的网格资源;(2)选择事件内容与网格资源的操作所需要的数据之间的关系;(4)在对一个服务进行触发时,设定触发时服务所在的范围,该范围可以不限定,也可以针对特定的一个或几个流程进行设定。
在步骤SP4:客户端网格资源操作行为监听器将监听到的事件发送给本管理域的网格资源协作中介。可以包括以下子步骤:
(1)根据在步骤SP3的结果,当网格资源在网格系统中发生操作行为时,将被网格资源操作行为监听器监听;(2)网格资源操作行为监听器根据网格资源的标识、操作行为类型和所在的范围搜索是否有对该资源的监听配置,根据资源操作产生的数据与事件内容之间的关系,将网格资源操作产生的数据提取后放入根据事件类型生成的事件实例中;(3)将子步骤(2)生成的事件发送给本管理域的事件处理中介。
在步骤SP5:客户端网格资源协作中介根据在步骤SP4中产生的事件连线订阅服务器,搜索可协作的网格资源。可以包括以下子步骤:
(1)客户端网格资源协作中介首先提取在步骤SP4中产生的事件的主题和内容;(2)根据子步骤(1)中的事件主题和内容与订阅服务器建立连接,并发出寻址请求;(3)订阅服务器首先根据事件主题定位到一个较大的网格资源订阅信息范围;(4)在子步骤(3)中的订阅信息范围中根据事件的内容进行匹配,得到完全满足需求的结果,并将网格资源的标识、所在的管理域标识加入到一个订阅者集合中返回给协作中介;(5)客户端网格资源协作中介接收订阅服务器返回的结果。如果返回结果中有可协作资源,则继续步骤SP6的处理;否则,向客户端外部事件监听器发送异常事件。
在步骤SP6:客户端网格资源协作中介根据在步骤SP5中发现的网格资源,对在步骤SP4中产生的事件做进一步处理后,向选中的服务端管理域发送协作请求事件。可以包括以下子步骤:
(1)根据在步骤SP5的中搜索到的订阅者集合中订阅该事件的网格资源数量做以下处理:如果集合中只有一个订阅者,则直接将事件和订阅者信息交由子步骤(2)处理,否则跳转到子步骤(3)进行处理;(2)提取子步骤(1)传过来的事件和订阅者信息,按订阅者信息中的网格资源标识和管理域标识,设置事件中的目的地和订阅者等属性;然后在数据库中记录网格资源与事件之间的触发关系,并将事件发送到服务端管理域;(3)循环提取在步骤SP5中由订阅服务器返回的订阅者集合中的订阅者信息,并生成一个同主题的新事件,将原事件的相关内容复制到新事件中并设置新事件与原事件之间的分解关系,然后将新事件和订阅者信息交由子步骤(2)处理。
在步骤SP7:服务端管理域接收到请求事件后,将事件交给本管理域的外部事件监听器。
在步骤SP8:服务端外部事件监听器负责驱动相应的网格资源适配器实现对网格资源的操作。可以包括以下子步骤:
(1)首先提取在步骤SP7中所述的事件中的订阅者信息;(2)根据订阅者的类型和事件的主题,在外部事件监听配置中搜索监听配置;(3)根据订阅者的类型选择不同的网格资源适配器:如果是业务流程,则选择业务流程适配器;如果是服务,则选择服务适配器;如果是人,则选择手工交互适配器;(4)根据搜索到的监听配置,通过选定的网格资源适配器驱动网格资源的运行。
在步骤SP9:服务端网格资源操作行为监听器监听服务端网格资源的操作结果,并将监听到的响应事件发送给本管理域的网格资源协作中介。
在步骤SP10:服务端网格资源协作中介将根据响应事件与协作响应事件之间的关系确定协作响应事件的客户端管理域,并发送该协作响应事件。可以包括以下子步骤:
(1)首先提取在步骤SP9中得到的响应事件的来源属性中的网格资源标识;(2)根据该网格资源标识,找到驱动该资源的事件,并提取出该事件的来源;(3)根据子步骤(2)中的事件来源,得到客户端管理域作为协作响应事件的目的地。
在步骤SP11:客户端管理域接收到请求事件后将协作响应事件交给本管理域的外部事件监听器,具体处理过程可以与上述步骤SP7相同。
在步骤SP12:客户端外部事件监听器负责驱动相应的网格资源适配器实现对网格资源的操作,具体处理过程可以与上述步骤SP8相同,从而完成一次协作。
图3A到3G是以产品供应过程为例的网格资源动态集成和协作示意图,其步骤如下:
(1)在服务器2(订阅服务器)创建“采购事件”、“采购清单”、“供货事件”及“完成供货”四个事件模板(图3A);
(2)订阅事件:服务器1中的“销售流程”和“清单归档服务”订阅“采购清单”事件,服务器3中的人工服务“供货服务”订阅“供货事件”,服务器4中的“采购流程”订阅“采购事件”和“完成供货”事件(图3A);
(3)部署事件监听器(图3A):服务器1、服务器3和服务器4均部署和配置事件监听器,服务器1的监听器用来监听“销售流程”中的“采购”操作并触发“采购事件”,同时监听来自外部的“采购清单”事件,在“采购清单”事件到达时唤醒正在等待的“销售流程”和调用“清单归档服务”;服务器3的监听器用来监听来自外部的“供货事件”并驱动人工服务“供货服务”,同时监听“供货服务”操作并触发“完成供货”事件;服务器4的监听器用来监听来自外部的“采购事件”和“完成供货”事件并驱动或唤醒“采购流程”,以及监听“采购流程”中的“备货”和“生成发货清单”操作并触发“供货事件”和“采购清单”事件。
(4)服务器1的事件监听器监听到“销售流程”的“采购”操作,触发“采购事件”E1,然后“销售流程”继续运行,直到运行到“接收清单”时挂起等待“采购清单”(图3B);
(5)服务器1的网格资源协作中介接收到“采购事件”E1后,连线订阅服务器2查找可供协作的网格资源,发现服务器4中的“采购流程”可供协作(图3B);
(6)服务器1的网格资源协作中介向服务器4发出请求,请求与服务器4中的“采购流程”进行协作(图3C);
(7)服务器4的事件监听器监听到“采购事件”E1后,驱动服务器4的“采购流程”运行(图3C);
(8)服务器4的事件监听器监听到“采购流程”中的“备货”操作,触发“供货事件”E2,“采购流程”继续运行,直到运行到“生成发货清单”时挂起等待“完成供货”(图3D);
(9)服务器4的网格资源协作中介接收到“供货事件”E2后,连线服务器2查找可供协作的网格资源,发现服务器3中的“供货服务”可供协作(图3D);
(10)服务器4的网格资源协作中介向服务器3发出请求,请求与服务器3中的“供货服务”进行协作(图3E);
(11)服务器3的事件监听器监听到“供货事件”E2后,驱动服务器3的“供货服务”运行(图3E);
(12)服务器3的事件监听器监听到供货完成,触发“完成供货”事件E3(图3F);
(13)服务器3的网格资源协作中介接收到“完成供货”事件E3后,向服务器4发送响应事件E3(图3F);
(14)服务器4的事件监听器监听到来自服务器3的“完成供货”事件E3后,唤醒正在等待E3的“采购流程”,并将“完成供货”事件E3的内容传送给“采购流程”(图3F);
(15)服务器4的事件监听器监听到“采购流程”的“生成发货清单”操作,触发“采购清单”事件E4(图3G);
(16)服务器4的网格资源协作中介接收到“采购清单”事件E4后,向服务器1发送响应事件E4(图3G);
(17)服务器1的事件监听器监听到外部事件E4后,根据服务器1的配置,唤醒正在等待“采购清单”的销售流程实例(在“接收清单”处挂起),并调用“清单归档服务”(图3H)。
在上述典型实施例中,各个步骤和子步骤均为示例性的,本领域普通技术人员可以根据实际情况来确定最终的实际步骤,而且各个步骤和子步骤的实现方法也是多种多样的,均应包括在本发明的范围之内。
尽管已经针对典型实施例示出和描述了本发明,本领域的技术人员应该理解,在不脱离本发明的精神和范围的情况下,可以进行各种其他的改变、替换和添加。因此,本发明不应该被理解为被局限于上述特定实例,而应当由所附权利要求所限定。