用于策略一致性控制的方法和注册表技术

技术编号:3480134 阅读:172 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了用于策略一致性控制的方法和注册表。用于对分配给面向服务体系结构(SOA)的对象(B、BP1…BPn、WS1…WSn)的策略(P)进行一致性控制的方法。每种策略(P)包括一个或多个断言,并且所述方法包括以下步骤:-识别至少两个SOA对象(BP1、WS1)之间的一个或多个操作依存关系;-分析所述至少两个SOA对象(BP1、WS1)的已分配策略(P),以便确定任何矛盾;以及-如果矛盾已被确定,则向用户发出警告。

【技术实现步骤摘要】

本专利技术涉及用于对分配给面向服务体系结构的对象的策略迸行一致性(consistency)控制的方法和注册表。
技术介绍
在面向服务的(软件)体系结构(SOA)中,将各种处理对象作为可 以按照标准化方式访问的独立服务提供给网络中的用户。SOA的对象基于 独立于底层的硬件和软件平台以及编程语言的形式定义进行交互操作。接 口定义封装了具体实现方式。SOA独立于具体的开发技术(例如Java 和.NET)。结果,因为接口是标准兼容的并且独立于处理逻辑的底层实现 方式,所以软件组件变得易于可再用。例如,C湖艮务可被JAVA应用程序 使用,并且反之亦然。SOA的多数定义使用经由通过TCP/IP的 HTTP/HTTPS传送的SOAP请求。但是,SOA可以使用任何基于服务的技 术。SOA对象之间可以具有复杂的相互关系。如图l所示例性示出的,处 理B可以调用多个其他处理Bl...Bn,这些处理又可以调用一些网络服务 Wl...Wn。另外,每个SOA对象可以服从一个或多个策略。这种策略包括 一个或多个断言,例如声明某些技术性能特性,诸如500ms的最大响应时 间、对每秒某一调用次数的吞吐量限制、对某一时间段或某一组用户的访 问限制。还可以通过利用布尔运算符来组合SOA对象的策略的断言,例 如低于20ms的最大响应时间"与"不多于五个并发用户。如图1所示,策略P (..)可被附加到每个SOA对象,即附加到总处 理B、处理BPl...BPn以及低层网络服务WSl-WSn。在现有技术的SOA 中,策略被独立地控制并且被存储在SOA的注册表中(见图1中的虚线 箭头)。但是,策略定义中可能有潜在的矛盾(inconsistency)乃至冲突。例如,如果总处理B的策略P (B)中的断言声明了处理B具有100ms的最大响应时间但是在处理B的执行期间直接或者间接使用的另一 SOA对象(例如图1中的网络服务W2)的策略仅保证200ms的最大响应 时间,这会导致两种性能策略的技术冲突。显而易见的是,在包括彼此之 间在运行时互相调用的数百对象的大型SOA中,难于监视这种矛盾。因此本专利技术的技术问题是提供一种改进的方法和注册表,帮助避免这 种性能矛盾使得可以可靠地进行总处理(特别是关于其在运行时期期间的 技术性能)的断言。
技术实现思路
在本专利技术的一个方面中,该问题是由一种用于对分配给面向服务体系 结构(SOA)的对象的策略进行一致性控制的方法来解决的,其中每种策 略(P)包括一个或多个断言,所述方法包括以下步骤- 识别至少两个SOA对象之间的一个或多个操作依存关系(dependency);- 分析至少两个SOA对象的已分配策略,以便确定任何矛盾;以及- 如果矛盾已被确定,则向用户发出警告。因此,不是独立地对待分配给各种对象的策略,而是首先识别各种 SOA对象的依存关系,其中该信息被接着用于确定有关SOA对象的策略 的定义中的任何矛盾。在一种实施例中,上面指出的方法步骤中的第一步包括从在设计时存 储在SOA的注册表中的对象描述得到一个或多个依存关系。该注册表信 息在本实施例中被用于推断策略冲突。SOA注册表例如可以通过创建从顶 层商业处理B下至最底层网络服务Wsi的依存关系图来跟踪各种SOA对 象的使用链。在另一种实施例中,第一步骤包括分析在运行时期期间至少两个SOA 对象之间的依存关系。换言之,监视在运行时期期间各种SOA对象之间 的交互作用提供了信息、哪个处理调用了哪个服务等等,使得它们的策略 随后可被相应地验证。分析步骤包括在一个示例中以低层SOA对象的策略开始分析并且将所述策略与高层SOA对象的策略进行比较,该高层SOA对象在运行时期 调用所述低层SOA对象。 一致性检查中的这种由下而上方法例如在SOA 的注册表中特别易于实现。然而,如果低层SOA对象的策略的所有断言被包括在高层SOA对象 的策略的断言中,则优选地不发出警告,如果低层SOA对象的断言中的 至少一个未被包括在高层SOA对象的策略的断言中,则可以发出警告。如果低层SOA对象的策略的断言是来自一种与高层SOA对象的所有 断言不同的类型,则所述断言取决于在运行时期期间对低层SOA对象的 调用而被传播作为高层SOA对象的策略的条件性断言。但是,也有可能 低层SOA对象的策略的断言是来自一种与高层SOA对象的断言之一不同 的类型但是仍然隐含对高层SOA对象的所述断言的限制,该高层SOA对 象的断言被相应地修改。在技术上特别重要的实施例中, 一个或多个SOA对象的策略中的断 言与SOA的运行时期有关并且包括与以下组中的至少一种有关的断言 响应时间、吞吐量、并发用户的数目、可用性、用户认证和/或授权、加密 和/或数字签名。根据另一个方面,本专利技术涉及SOA的注册表,该SOA的注册表适用 于执行上面描述的方法中的任何一种。本专利技术方法的实施例的另外有利修改被限定于进一步的从属权利要求中。附图说明在以下详细描述中,参考附图对本专利技术的当前优选实施例进行进一步描述图l:具有多个交互对象和其相关策略的简化SOA;图2:作为WSDL文件的一部分的以及根据UDDI标准的用于SOA 对象的策略的示例;图3:本专利技术一种实施例中的在注册表的关联导航器工具中给出的依存关系图的示例;以及图4:用于修改/创建策略的断言的窗口,其包括用于一致性控制的核 选框。具体实施例方式图1给出了简化SOA的示例。处理B在执行的情况下调用各种其他 处理BPl...BPn,这些处理又调用网络服务WS1至WSn。图1所示的 SOA的网络服务之间的操作依存关系被简化。例如,可能存在处理BPx, 其在执行期间不是仅调用单个网络服务而是调用多个网络服务WSx、 WSy、 WSz (图1中未示出)。在图1的示例性SOA中,每个SOA对象 被提供以策略P。但是,这不是必需的。与之相反,只有SOA的对象的子 集可被提供以包括一个或多个断言的策略,或者单个对象可以具有多于一 个被分配的策略。显而易见的是,上面描述的各种策略之问的任何矛盾的 发生可能性随着策略数目而增加。分配给SOA中的至少某些对象的策略可能涉及不同的功能方面。 SOA对象的策略例如可以包含与SOA的设计时间有关的断言,例如各对 象对某一标准或某一模式的遵从。在另一示例中,策略可以包括与SOA 的改变有关的断言,例如相关SOA对象的生命周期、其批准或版本。技 术上最相关的领域是与SOA的运行时期有关的策略,其中关于验证、授 权、加密、签名、SOA对象的可用性、响应时间、吞吐量、并发用户数目 对SOA对象进行断言。图2a和2b图示出如何可以实现这些策略。图2a给出了用于描述 SOA的网络服务的WSDL文件的一部分的示例。如图可见,WSDL文件 包括各种标签々wsp:polic,,指示出对各网络服务进行的断言,例如 200ms的确认间隔。图2b图示出利用UDDI标准的策略的另一实现示例。在本专利技术的一种实施例中,首先利用SOA注册表10 (参考图1)来 识别SOA对象之间的依存关系和用途。换言之,SOA注册表10不仅存储 各种策略P (...)以供检索(retrieval)而且标识出各种对象之间的操作依 存关系。这在图3中被示意性地图示出,图3示出了本专利技术的注册表实施例的关联导航器本文档来自技高网
...

【技术保护点】
用于对分配给面向服务体系结构的对象(B、BP1…BPn、WS1…WSn)的策略(P)进行一致性控制的方法,其中每种策略(P)包括一个或多个断言,所述方法包括以下步骤:    a.识别至少两个面向服务体系结构对象(BP1、WS1)之间的一个或多个操作依存关系;    b.分析所述至少两个面向服务体系结构对象(BP1、WS1)的已分配策略,以便确定任何矛盾;以及    c.如果矛盾已被确定,则向用户发出警告。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:比约恩布拉乌尔哈拉德斯隆宁
申请(专利权)人:软件股份公司
类型:发明
国别省市:DE[德国]

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

1
相关领域技术
  • 暂无相关专利