发明名称 |
一种基于分布式适配的服务协作方法及其系统 |
摘要 |
本发明公开了一种基于分布式适配的服务协作方法及其系统,属于网络服务领域。本发明的方法为:首先依据协作需求建立全局的服务协作流程,并将其投影到各参与角色,得到各角色的抽象服务接口集合;同时建立参与协作的实际服务行为接口模型;然后将抽象服务接口与对应的实际服务行为接口进行可适配的一致性检查;对满足可适配的实际服务的行为接口构造适配器;最后将适配器封装为Web服务分布式地部署在网络执行环境中。本发明的系统的协作流程层包括协作流程建模工具和协作流程投影工具;适配管理层包括映射模型管理模块、一致性检查模块、适配器管理器;本发明可满足开放网络环境对于高效、灵活的服务协作机制的需求。 |
申请公布号 |
CN101588388B |
申请公布日期 |
2011.12.21 |
申请号 |
CN200910084880.4 |
申请日期 |
2009.05.26 |
申请人 |
中国科学院软件研究所 |
发明人 |
乔晓强;魏峻;黄涛 |
分类号 |
H04L29/08(2006.01)I;G06F9/46(2006.01)I |
主分类号 |
H04L29/08(2006.01)I |
代理机构 |
北京君尚知识产权代理事务所(普通合伙) 11200 |
代理人 |
邵可声 |
主权项 |
一种基于分布式适配的服务协作方法,其步骤为:1)依据协作需求,建立全局的服务协作流程,采用角色描述所述服务协作流程中的参与者;2)将服务协作流程转换为CSP形式化语言的模型结构,然后通过投影算法将转换后的服务协作流程投影到各个参与角色,得到各个角色的抽象服务接口集合;同时建立参与协作的实际服务行为接口模型;其中,将转换后的服务协作流程投影到各个参与角色的方法为:a)对于原子活动的投影:如果当前角色为发送或接收角色,则将其投影为对应的消息发送或接收活动;对于原子活动中的其他角色投影为SKIP;所述原子活动为表示两个角色之间的一次消息交换;b)对于顺序流程P;Q的投影:设流程P中所有结束活动的消息接收角色集合为Tail(P),而Q中所有起始活动的消息发送角色集合为Head(Q);如果当前角色属于Tail(P),那么增加将当前角色发送同步消息msyn到Head(Q)中的每个角色的顺序同步流程;如果当前角色属于Head(Q),那么增加将当前角色从Tail(P)中的每个角色接收同步消息msyn的顺序同步流程;c)对于前缀活动则采用b)中的投影方法进行投影;d)对于并发活动P||Q的投影:分别对流程P和Q进行投影,然后再以并发操作符连接投影后的流程;e)对于选择活动的投影:对于协作流程中的选择操作符,将参与协作的一个角色设置为选择决策角色r0,而{ri|ri≠r0∧1≤i≤n}则为所有在流程P或Q中具有相关发送或接收活动的角色,然后构造相应的同步选择消息mP和mQ,并从r0发送到每一个ri,用来通知角色r0所选择的分支;f)对于具有选择结构的循环活动的投影:对循环结构内的选择活动直接进行投影;3)将抽象服务接口与对应的实际服务行为接口进行可适配的一致性检查;4)如果实际服务的行为接口满足可适配的一致性,则为其自动构造适配器;如果实际服务的行为接口不满足可适配的一致性,则返回不可适配的交互路径信息;5)将各个服务组件所对应的适配器转换成相应的实现形式并封装为Web服务,分布式地部署在与实际服务相同的执行环境中。 |
地址 |
100190 北京市海淀区中关村南四街4号 |