CN109561143B - 机载soa平台关联性服务发布与选择方法 - Google Patents
机载soa平台关联性服务发布与选择方法 Download PDFInfo
- Publication number
- CN109561143B CN109561143B CN201811418084.5A CN201811418084A CN109561143B CN 109561143 B CN109561143 B CN 109561143B CN 201811418084 A CN201811418084 A CN 201811418084A CN 109561143 B CN109561143 B CN 109561143B
- Authority
- CN
- China
- Prior art keywords
- service
- platform
- information
- airborne
- soa
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提出一种机载SOA平台关联性服务发布与选择方法,旨在提供一种综合考虑服务与平台动态特征相互影响的选择方法。本发明通过下述技术方案予以实现:每个机载SOA平台节点将平台提供的服务信息和平台关联性信息项封装成一个数据包后向机载平台通信网络中周期性发送;每个机载SOA平台根据服务使用者的请求信息,结合当前节点中存储接收到的各平台提供的服务信息、平台关联性信息综合进行服务选择;选择过程中,服务选择处理程序首先根据服务的静态功能性描述信息,从存储的服务中选出候选服务;然后根据动态指标性信息进行筛选;接下来进行与平台关联的依赖性信息预判,并提前锁定候选服务执行过程中的平台运动行为以及所需资源开销。
Description
技术领域
本发明涉及一种主要应用于动态运行环境下的与航空机载SOA平台特征关联的服务发布与选择方法,用于对机载有人平台或无人机平台在动态运行环境下提供的服务进行发布和选择,尤其是可应用于机载动态环境下面向服务的基础设施实现与技术开发领域。
背景技术
近年来,出现一种被誉为下一代Web服务基础的技术架构,它就是面向服务架构(Service Oriented Architecture,SOA)。SOA是在计算环境下设计、开发、应用和管理分散的逻辑单元(服务)的一种规范,核心思想是将应用程序的不同功能单元以服务的形式进行接口封装,然后通过松散耦合的服务组合来完成系统,因此提供了更高层次的复用性。SOA的服务封装定义独立于实现服务的硬件平台、操作系统和编程语言,并采用开放式的标准和通信协议实现服务之间的交互。服务提供者和使用者可以通过SOA架构实现服务的“各尽其能,各取所需”,通过服务能力的发布、选择、组合与编排增加对任务需求更改的敏捷反映能力,从而更好的适应动态多变的环境。SOA通过标准化、自治和模块化以及面向业务的灵活架构设计思路,为复杂系统提供了互操作性和以服务为基础组件的系统构造方式,使得上层业务系统的设计与开发变得更有弹性。
目前,Web Service技术作为面向服务架构的良好实现正受到越来越广泛的关注。它具备的松散耦合以及平台无关特性,非常适合于互联网环境下异构应用之间的互操作和系统集成,对提高网络软件生产效率和产品质量具有重要意义。在技术实现过程中已经形成了一套完善的规范化的设计、开发与运行流程体系来实现服务描述、服务发布和发现以及服务策略控制等,其中Web服务描述语言(Web Service Description Language,WSDL)被用来描述服务能力。WSDL是一份XML文档,其中包含了服务支持的端口信息、具体的操作、每个操作关联的输入和输出消息、消息的数据类型定义以及服务的调用机制信息,这些信息由 WSDL描述文档中嵌套在definitions元素内的7个重要标签元素,即types、import、message、portType、operation、binding和service来进行描述。WSDL描述文件对访问Web服务的操作和访问时使用的请求/响应消息进行了抽象描述,然后将其绑定到具体的传输协议和消息格式上以最终定义具体部署的服务访问点,服务使用者可以通过WSDL文件访问服务端提供的服务功能。然而,WSDL仅仅关注Web服务功能方面的描述,而不包含任何非功能方面或者服务质量(Quality of Service,QoS)特性的描述。在SOA软件架构中,服务使用者还需要知道如何获取服务、谁提供了服务、服务类型是什么、服务的质量如何以及服务的安全策略等信息,因此服务的发布和发现是实现SOA架构的另一个重要问题。根据实现方式的不同,服务发布与发现的架构分为集中式(有中心,基于目录,适用于企业级信息系统)、分布式(无中心,P2P架构,适用于移动网络环境)和混合式(基于目录的分布式架构,兼具前两种方式的特点)三种,三种方式各有其适用场合和优缺点,其中以集中式架构UDDI最具代表性,在企业级信息系统中应用最为广泛。UDDI提供了一种发布与发现Web服务的标准方法,用于建立一个开发并且与平台无关的框架以描述、发现和集成服务。在基于WebService的 SOA系统服务交互过程中,有服务提供者、服务使用者和服务注册中心三种角色,三种角色的交互具体涉及到服务发布、查找和绑定操作。一般情况下,服务提供者负责提供可通过网络访问的服务,并定义好Web服务的WSDL描述文件,将诸如服务提供者、服务实例及其相关元数据等信息发布到服务注册中心或者直接发布给服务消费者。服务使用者通过服务描述关键字或者语义描述信息向服务注册中心发起查询服务请求,服务注册中心根据查询信息与已注册的服务信息进行匹配,并返回满足要求的服务序列,服务使用者从中选择合适的服务提供者进行绑定使用。
服务发布和选择是SOA架构实现过程中的关键技术点。虽然目前在互联网领域已有较完善的实现技术与规范,但主要是针对互联网中静止的节点和充足的网络带宽条件,以及节点通常有足够的资源持续维持服务运行的特征,然而,区别于传统SOA架构的相关实现方法,在机载平台的实际应用中还需要重点结合环境面临的挑战与问题进行技术开发,例如有限的通信网络带宽、机载平台节点的高移动性以及受限的可用资源等特点,都使得需要对网络中的服务信息发布、交互以及选择进行重新设计与考虑。传统Web Service的相关技术并没有考虑机载动态环境特征,因此并不适用于也不满足机载动态环境领域的特征及应用需求。例如互联网中许多服务在运行过程支持创建多个实例,从而允许多个使用者同时调用;而机载环境中服务通常仅存在一个实例,在运行过程中某时刻仅支持一个使用者调用,即该服务不可重入。对于这种服务,使用时需要进行锁定,在未解锁期间或者服务未执行完毕时禁止其它使用者调用。同时由于服务执行过程中需要消耗资源或引起所在平台行为的变化,在锁定服务的过程中还需要服务根据执行情况,同时锁定资源开销以及平台行为信息,以确保服务的成功执行。对于处于锁定态的服务,其他使用者不能使用,否则还需要触发服务抢占处理流程。因此,目前在机载领域中使用传统Web Service的相关技术方案实现服务发布和选择时还存在诸多不足,主要包括:
1、未考虑服务发布时动静态描述信息分离。机载环境下网络带宽有限,分发完整的服务描述文件需要消耗很大的网络带宽。服务的基础功能接口信息通常在使用前已经知道,因此应仅分发机载环境下主要关注的服务动态指标及运行状态等信息,从而节省带宽资源开销;
2、未考虑机载平台的资源信息与行为信息。机载平台通常是服务提供者的运行载体,其自身的性能与状态也会影响服务的选择。目前已有的相关方案在服务使用和选择时都未考虑提供服务的机载平台资源和平台行为所带来的影响;
3、未考虑服务选择过程中优先级触发的抢占问题。机载环境下每个使用者通常具有不同的优先级,在紧急情况下,需要优先保障高优先级使用者选择使用,这就需要一种充分考虑机载平台服务资源开销以及平台行为的服务选择使用仲裁判断机制。
发明内容
本发明的目的针对上述现有技术存在的不足之处,以及不可重入的服务的选择及优先级仲裁处理问题,提供一种综合考虑服务与平台动态特征相互影响的机载SOA平台关联性服务发布与选择方法及相关处理流程,以克服现有方法未考虑服务发布时动静态描述信息分离、未考虑服务平台的资源信息与行为信息、未考虑服务选择过程中优先级触发的抢占处理等情况的问题。
本发明的上述目的可以通过以下措施来达到,一种机载SOA平台关联性服务发布与选择方法,其特征在于包括如下步骤:机载SOA平台在向机载平台通信网络中的接收方进行服务发布时,同时向接收方发布平台提供的服务信息集合与平台关联性信息集合;每个机载SOA平台节点将上述平台提供的服务信息和平台关联性信息项封装成一个数据包后向机载平台通信网络中进行周期性发送;机载平台通信网络中的各机载SOA平台接收本节点和外部其它节点发布的服务与平台关联性消息,并进行存储与状态更新;机载平台通信网络中的每个机载SOA平台获知整个通信网络中的节点提供的服务信息与平台关联性信息,并根据服务使用者的请求信息,再结合当前节点中存储接收到的各平台提供的服务信息、平台关联性信息综合进行服务选择;选择过程中,服务选择处理程序首先根据服务的静态功能性描述信息,从存储的服务中选出候选服务,然后再根据候选服务的动态指标性特征描述信息进行筛选,接下来再根据候选服务的占用状态信息,以及候选服务的执行过程进行平台关联的依赖性信息预判,并提前锁定候选服务执行过程中的平台运动行为以及所需资源开销;在执行服务选择处理时,服务使用者依据自身的优先级对于候选服务的使用具有不同的优先权,如果候选服务的占用状态、候选服务执行所需资源开销或行为信息无法满足时将触发服务抢占流程,此刻将根据实际环境状态优先保障高优先级使用者对于候选服务的调用。
本发明相比于现有技术具有如下特点及有益效果:
本发明充分考虑机载动态环境下的平台特征、服务选择与平台的影响以及相互约束关系,在进行机载SOA平台服务发布和选择时,综合考虑机载平台特征及状态信息。通过实现服务的静态描述信息与动态指标性信息描述分离,在发布信息时,不分发服务的静态功能性描述信息部分,仅分发服务的动态指标性信息、占用状态信息和所在平台的关联性资源及行为状态信息,提升了信息分发效率。相比传统互联网领域的服务发布与选择方法,克服了现有方法未考虑服务发布时动静态描述信息分离、未考虑机载平台的资源与行为信息的问题。
本发明采用机载SOA平台在向机载平台通信网络中的接收方进行服务发布时,同时向接收方发布平台提供的服务信息集合与平台关联性信息的方法。每个机载SOA平台节点将平台提供的服务信息和平台关联性信息项封装成一个数据包后向机载平台通信网络中进行周期性发送;各机载SOA平台接收本节点和外部其它节点发布的服务与平台关联性消息,从而获知整个通信网络中的节点提供的信息,并进行存储与状态更新;服务选择过程中根据服务使用者的请求信息,再结合当前节点中存储接收到的各平台提供的服务信息、平台关联性信息综合进行服务选择,不需要向网络中发布查询请求,提升了对于机载动态网络带宽不足、平台节点动态移动与资源受限等环境下的适应能力。
本发明在服务的选择过程中,同时考虑服务的静态功能性描述、动态指标性描述以及平台关联性信息。除了考虑满足基本的静态功能性需求和动态指标性需求外,还充分考虑服务执行过程中的资源开销或者可能引起的平台行为变化,以及与平台现有行为的兼容性,并进行服务执行过程资源开销或者行为的预判和锁定,使得服务选择过程充分结合服务的描述信息以及平台动态运行状态。本发明将服务的选择与平台信息紧密关联,解决了传统方法在进行服务选择时未考虑机载平台的资源及行为的问题。
本发明通过设计服务抢占处理流程,当进行服务选择过程中出现所需资源或行为不满足要求时,可以触发服务抢占处理,支持不同优先级的服务使用者对服务、所需资源以及行为的抢占功能。通过解除低优先级的使用者对于服务、资源和行为的占用,从而满足高优先级使用者的需求,克服了现有方法未考虑服务选择过程中优先级触发的抢占处理的问题,提升了面向服务架构在机载环境下的适应能力和对高优先级服务使用者的服务调用保障能力。
本发明适用于机载动态环境下的服务发布与选择处理,可以广泛的应用于如无人机、有人机等平台构成的机载动态环境下的面向服务架构基础设施平台技术开发。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是本发明的机载SOA平台关联性服务发布信息示意图。
图2是图1的机载SOA平台关联性服务发布方式示意图。
图3是图1的机载SOA平台关联性不可重入服务运行状态转换图。
图4是图1的机载SOA平台关联性服务选择处理流程图。
图5是图1的机载SOA平台关联性服务抢占处理流程图。
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
具体实施方式
参照图1。根据本发明,机载SOA平台在向机载平台通信网络中的接收方进行服务发布时,同时向接收方发布平台提供的服务信息集合与平台关联性信息集合;每个机载SOA平台节点将上述平台提供的服务信息和平台关联性信息项封装成一个数据包后向机载平台通信网络中进行周期性发送;机载平台通信网络中的各机载SOA平台接收本节点和外部其它节点发布的服务与平台关联性消息,并进行存储与状态更新;机载平台通信网络中的每个机载SOA平台获知整个通信网络中的节点提供的服务信息与平台关联性信息,并根据服务使用者的请求信息,再结合当前节点中存储接收到的各平台提供的服务信息、平台关联性信息综合进行服务选择;选择过程中,服务选择处理程序首先根据服务的静态功能性描述信息,从存储的服务中选出候选服务,然后再根据候选服务的动态指标性特征描述信息进行筛选,接下来再根据候选服务的占用状态信息,以及候选服务的执行过程进行平台关联的依赖性信息预判,并提前锁定候选服务执行过程中的平台运动行为以及所需资源开销;在执行服务选择处理时,服务使用者依据自身的优先级对于候选服务的使用具有不同的优先权,如果候选服务的占用状态、候选服务执行所需资源开销或行为信息无法满足时将触发服务抢占流程,此刻将根据实际环境状态优先保障高优先级使用者对于候选服务的调用。
参照图2。机载平台通信网络包含:具有服务交互基础设施以及服务与平台信息缓存的机载SOA平台A、机载SOA平台B、机载SOA平台C、机载SOA平台D和机载SOA 平台E。各机载SOA平台均接入机载平台通信网络,并进行服务的发布和服务信息接收,每个节点将接收到的信息存储在服务与平台信息缓存中。通过机载SOA平台,服务提供者和服务使用者实现服务的发布与服务的选择。
在以下描述的一个最佳实施例中,每个机载SOA平台(以下简称平台)在进行服务发布时,需要同时发布所提供的服务信息与平台关联性信息。服务的选择和执行与这两项信息紧密关联,并相互影响。在机载SOA平台提供的服务信息和平台关联性信息中除了包含基本的服务能力与指标、平台当前运行状态信息外,还明确了服务执行期间对平台的资源预开销与运行行为等信息。
在动态环境下,机载SOA平台关联性服务发布和选择方法,至少包含以下步骤:
Step1:机载SOA平台收集自身的平台服务信息与平台关联性信息。在向机载平台通信网络中的接收方发布服务时,同时向接收方发布平台提供的服务信息集合与平台关联性信息集合。
机载SOA平台发布的服务信息集合S={s1,…,si,…,sn},其中:n为平台发布的服务信息数量,si表示平台提供的第i个服务的信息,si={sdi,ddi,udi},sdi为静态功能性描述信息子元素,ddi为动态指标性描述信息子元素,udi为服务占用状态信息子元素。在上述三个子元素中,sdi为仅包含服务提供者的WSDL服务描述文件中的数据类型“types”、服务提供的 operation的输入和输出消息“message”、服务提供的端口信息“portType”和每个服务提供的具体操作“operation”标签描述信息的XML文件,主要是服务的静态功能操作接口描述。使用中可以根据该部分描述信息生成代码,通常在服务确定后这部分的描述不再改动。ddi指服务的属性及指标信息,主要用于描述具备相同功能的服务的不同提供者的不同性能指标等信息,通常借助领域本体进行描述,例如探测距离、范围、方位角精度等。udi指服务当前的运行及被使用状态信息,主要描述服务的运行状态,以及当前服务的使用者信息。如果某个服务运行过程中支持多个使用者同时调用,则这个服务为可重入;如果某个服务在运行过程中某时刻仅支持一个使用者调用,则称该服务不可重入,对于这种服务,运行状态可以分为锁定态和空闲态,其中:锁定态指该服务已被某使用者调用,在未解锁期间或者服务未执行完毕时禁止其它使用者调用。在锁定服务的过程中,服务使用者根据调用情况,同时锁定资源开销以及平台行为信息。对于处于锁定态的服务,其他使用者不能使用,否则需要触发服务抢占处理流程。对于每个服务,如果其为锁定态,则还需要在该服务的udi中记录当前锁定该服务的是哪个使用者,其对应的优先级,以用于后续的服务抢占处理。空闲态表示该服务当前未被使用,此时可以被使用者调用。本实施例仅关注对于不可重入的服务的选择及优先级仲裁处理问题。
为了节省带宽资源,在进行服务发布时,不分发服务的静态功能性描述信息sdi部分,并且认为在服务提供的功能确定后,服务的使用方已获知服务的描述方式,而不需要在动态运行过程中再获知服务提供方的描述文件,因此对于静态功能性描述信息sdi部分仅通过布隆过滤器进行描述,用于标注该平台提供哪些服务。服务分发的重点内容为服务的动态指标性描述部分以及占用状态,即该服务的动态指标特性,如探测距离、精度以及该服务是否被占用等信息,这样接收方在选择时主要根据不同服务提供者的动态指标部分以及服务的当前运行状态情况进行选择。
机载SOA平台发布的平台关联性信息集合P={ps,pct,pbt},其中:ps为平台的静态标识性信息,pct为t时刻的平台资源状态信息,pbt为t时刻的平台动态行为信息。平台的静态标识性信息ps主要描述平台的标识号、平台类型以及通信地址等静态属性信息;t 时刻的平台资源状态信息集合pcti描述了资源i在t时刻的所有量、t到tj时间段内的资源锁定量信息、t到tj时间段内的资源锁定者信息;t时刻的平台动态行为信息集合pbti描述了平台t时刻的行为i的信息、行为i 的锁定者信息。
由于服务运行过程中需要消耗所在平台的资源,所以对于平台的资源信息,例如油量、电量等消耗类资源,具有锁定功能,即某一服务在执行前提前锁定了所需的开销,以确保该服务能够成功执行。对于每种被锁定的平台资源,需要描述锁定者的标识,用于标注该资源是由哪个服务调用者发起的,以及被锁定的平台资源量。平台资源状态信息随服务调用与执行、平台运动等发生改变。
服务执行过程中,除了消耗平台资源外,还可能会引起平台的运动行为产生变化。平台动态行为信息随服务调用与执行、平台运动等发生改变,例如:沿着规划的路径飞行到某地执行图像采集任务,因此机载SOA平台在执行服务选择的过程中需要根据机载SOA平台现有动态行为信息,并结合所选服务执行过程中可能产生的平台行为变化进行兼容性判断,以决策所选服务是否可以有效执行。如果存在不兼容的行为并且被锁定,则表示该行为是配合完成其它服务的调用所必须执行的行为,不允许改变,在锁定者信息中明确了发起者的标识,用于标注该行为是由哪个服务使用者发起的,或者哪个服务的执行引起的,在进行服务选择时需要根据锁定者的优先级进行抢占处理;如果不存在行为锁定者,则表示该行为是平台的自发行为,在进行服务选择时该行为允许改变。
Step2:服务发布时,每个机载SOA平台节点按照组播的方式具体对平台服务信息和平台关联性信息进行封包发布:当前平台节点的静态标识信息、当前平台节点提供的服务信息、当前平台节点提供的每个服务的动态指标属性信息及运行状态、当前平台节点提供的每个服务的使用者信息、当前平台节点t时刻的每个资源的所有量信息、当前平台节点t到tj时间段内每个资源的锁定量信息、当前平台节点t到tj时间段内每个资源的锁定者信息、当前平台节点t时刻的行为信息、当前平台节点t时刻的每个行为锁定者信息。对于每个平台节点提供的服务信息,不发布服务的静态功能性描述部分,仅采用布隆过滤器描述该节点是否提供该服务,通过布隆过滤器可以显著减少分发完整服务静态描述符的带宽开销;服务的动态指标信息部分基于领域本体库进行描述,对于每个功能基于本体描述定义一个规范化的描述消息。每个平台节点将上述信息项封装成一个数据包后向机载平台通信网络中进行周期性发送。
Step3:机载平台通信网络中的各机载SOA平台接收本节点和外部其它节点发布的服务与平台关联性消息,并进行存储与状态更新。网络中的每个机载SOA平台都可以获知整个网络中的节点提供的服务信息与平台关联性信息。
Step4:机载平台通信网络中的机载SOA平台节点根据服务使用者的请求信息,再结合当前节点中存储接收到的各平台提供的服务信息、平台关联性信息综合进行服务选择。选择过程中,服务选择处理程序首先根据基本的服务静态功能性描述信息sd从存储的服务中选出候选服务,然后再根据候选服务的动态指标性特征描述信息dd进行筛选,接下来再根据候选服务的占用状态以及候选服务的执行过程进行平台关联的依赖性信息预判,并提前锁定候选服务执行过程中的平台运动行为以及所需资源开销,如果候选服务的占用状态、候选服务执行所需资源开销或行为信息无法满足时将触发服务抢占流程,由服务抢占处理程序根据服务使用者的优先级信息执行抢占处理。
由于服务的执行需要消耗资源,从而引起平台某一时刻的资源状态和行为变化,反过来,平台的运行状态也会影响服务的选择,因此服务的选择过程与平台关联性信息紧密相关。在进行选择服务时,还要根据该服务的可能资源开销以及当前平台资源状态进行预判,并提前锁定执行该服务需要的资源开销,然后根据可能触发的服务所在平台动态运行行为进行预判,并提前锁定服务执行过程中的平台运动行为。
参照图3。不可重入的服务在运行过程中的状态转换,服务初始运行时处于空闲态,等待服务使用者的调用;处于空闲态的服务如果被服务使用者调用,则跳转到锁定态,并禁止其它服务使用者调用,服务执行完毕后,则跳转到空闲态;处于锁定态的服务如果被高优先级使用者抢占,则也会重新跳转到空闲态。
参照图4。在执行服务选择的处理流程中,服务使用者依据自身的优先级对于服务的使用具有不同的优先权,当选择条件无法满足时将触发服务抢占流程,此刻将根据实际环境状态优先保障高优先级使用者对于服务的调用,并按照如下约束执行抢占处理:某一服务正被一个低优先级使用者使用时,此时服务处于锁定状态,当一个高优先级使用者也需要使用该服务时,触发该低优先级使用者释放对该服务的占有权;当一个使用者申请某服务时,而平台资源无法满足执行要求时,需要释放那些锁定了该资源的其它低优先级服务使用者的占有权;当一个使用者申请某服务时,而平台的行为无法满足要求时,需要释放那些锁定了该平台行为的其它低优先级服务使用者的占有权。
在服务使用者进行服务选择时,如果候选服务为空闲态,且调用该候选服务时的平台关联性资源、行为信息都满足需求,则选择成功,这时同步锁定该服务以及对应的平台资源与行为,否则需要根据使用者的优先级信息触发服务抢占处理。具体的服务选择处理流程如下:
S1:服务选择处理程序首先根据服务使用者所申请服务的静态功能性描述,判断当前节点缓存的服务集合中是否存在满足需求的候选服务,如果不存在则选择失败,退出并结束,否则得到候选服务并继续执行;
S2:服务选择处理程序判断从S1步骤得到的候选服务动态指标是否满足需求,如果不满足则选择失败,退出并结束,否则继续;
S3:服务选择处理程序判断S2步骤得到的满足动态指标的候选服务当前是否被锁定,是则跳至S7判断是否需要触发服务抢占,否则继续;
S4:服务选择处理程序判断S3步骤得到的未被锁定的候选服务执行所需的资源开销是否满足需求,如果不满足则跳至S7判断是否需要触发服务抢占,满足则继续;
S5:服务选择处理程序判断执行S4步骤得到的满足资源开销的候选服务是否需要触发平台行为改变,否则跳至S10锁定该候选服务,是则继续;
S6:服务选择处理程序判断S5步骤中的候选服务所触发的行为是否与平台现有行为兼容,否则跳至S7判断是否需要触发服务抢占;是则跳至S10锁定该候选服务;
S7:服务选择处理程序判断服务使用者是否选择了触发服务抢占,否则选择失败,退出并结束,是则继续并转至S8触发服务抢占处理流程;
S8:服务选择处理程序触发执行服务抢占处理流程,服务抢占时需要根据当前服务申请者的优先级进行判断,以触发其它服务使用者进行服务、资源或者平台行为释放,服务抢占处理流程执行完后转至S9判断服务抢占是否成功;
S9:服务选择处理程序判断候选服务抢占是否成功,如果候选服务抢占失败,则服务选择也失败,退出并结束,成功则跳至S10锁定该候选服务;
S10:服务选择处理程序将满足服务使用者申请的候选服务的状态置为锁定态,禁止其它使用者调用;
S11:服务选择处理程序锁定满足服务使用者申请的候选服务执行过程中的资源预开销量;
S12:服务选择处理程序锁定满足服务使用者申请的候选服务的平台行为设定;
S13:服务选择处理程序完成服务选择,服务使用者调用执行满足申请要求的候选服务;
S14:服务使用者调用的候选服务执行完后退出,并解锁候选服务占用的资源与平台行为。
参照图5。在抢占处理执行过程中,按照服务、资源和行为锁定者的优先级顺序,服务抢占处理程序优先解锁更低优先级的服务使用者。在解除服务调用的过程中,将服务的状态解锁,同时解锁服务调用时预先锁定的资源开销以及平台行为信息,在解除被占用的资源以及行为后,从而满足高优先级使用者的需求。服务执行完毕时,也将自行解锁对资源或者平台行为的占用情况。
触发服务抢占的因素分:服务使用者所申请的候选服务被锁定、所申请的候选服务所需资源不足、所申请的候选服务触发的行为与平台现有行为不兼容三种,抢占过程中需要分别对三种情况进行先后判断,执行过程中部分步骤彼此交联,具体的处理流程如下:
服务抢占处理程序对于服务使用者所申请的候选服务被锁定所触发的抢占:
O1:服务抢占处理程序首先判断服务使用者所申请的候选服务的当前使用者的优先级是否低于当前申请者,否则抢占失败并结束,是则继续并转至O2;
O2:服务抢占处理程序向候选服务提供节点和当前使用者发起服务释放请求;
O3:服务抢占处理程序判断服务使用者所请求的候选服务是否成功被当前使用者释放,否则抢占失败并结束,是则继续并转至O4;
O4:服务抢占处理程序判断是否满足服务使用者所请求的候选服务执行所需的资源开销,否则触发由于“所申请的候选服务所需资源不足所触发的抢占”中的步骤P1,是则继续并转至O5;
O5:服务抢占处理程序判断候选服务执行是否需要触发平台行为改变,否则抢占成功并结束,是则继续并转至O6;
O6:服务抢占处理程序判断服务使用者所申请的候选服务触发的行为是否与平台现有行为兼容,否则触发由于“所申请的候选服务触发的行为与平台现有行为不兼容所触发的抢占”中的步骤Q1,是则抢占成功并结束。
服务抢占处理程序对于服务使用者“所申请的候选服务所需资源不足所触发的抢占”:
P1:服务抢占处理程序首先判断服务使用者所申请的候选服务执行所需的资源是否被低优先级使用者使用的服务占用,否则抢占失败并结束,是则继续并转至P2;
P2:服务抢占处理程序向低优先级服务使用者和对应的服务提供者发起服务释放请求;
P3:服务抢占处理程序判断低优先级服务使用者和对应的服务提供者是否被成功释放(同步释放所占用的资源),否则抢占失败并结束,是则继续并跳至O5。
服务抢占处理程序对于服务使用者“所申请的候选服务触发的行为与平台现有行为不兼容所触发的抢占”:
Q1:服务抢占处理程序首先判断与服务使用者所申请的候选服务触发的行为不兼容的平台行为是否为低优先级使用者使用的服务触发,否则抢占失败并结束,是则继续并转至Q2;
Q2:服务抢占处理程序向低优先级服务使用者和对应的服务提供者发起服务释放请求;
Q3:服务抢占处理程序判断低优先级服务使用者和对应的服务提供者是否被成功释放(同步释放锁定的不兼容的平台行为),否则抢占失败并结束,是则抢占成功并结束。
本发明尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (10)
1.一种机载SOA平台关联性服务发布与选择方法,其特征在于包括如下步骤:在服务的选择过程中,各机载SOA平台接收本节点和外部其它节点发布的服务与平台关联性消息,收集自身的平台服务信息与平台关联性信息,以平台发布的服务信息数量n,平台提供的第i个服务的信息s i 组成机载SOA平台发布的服务信息集合;以主要描述平台的标识号、平台类型以及通信地址的静态属性信息为平台的静态标识性信ps,以t时刻的平台资源状态信息集合和t时刻的平台动态行信息集合pbt为平台关联性信息集合,向机载平台通信网络中的接收方进行服务发布,同时向接收方发布平台提供的服务信息集合与平台关联性信息集合;每个机载SOA平台节点将上述平台提供的服务信息和平台关联性信息项封装成一个数据包后向机载平台通信网络中进行周期性发送;机载平台通信网络中的各机载SOA平台接收本节点和外部其它节点发布的服务与平台关联性消息,并进行存储与状态更新;机载平台通信网络中的每个机载SOA平台获知整个通信网络中的节点提供的服务信息与平台关联性信息,并根据服务使用者的请求信息,再结合当前节点中存储接收到的各平台提供的服务信息、平台关联性信息综合进行服务选择;选择过程中,服务选择处理程序首先根据服务的静态功能性描述信息,从存储的服务中选出候选服务,然后再根据候选服务的动态指标性特征描述信息进行筛选,接下来再根据候选服务的占用状态信息,以及候选服务的执行过程进行平台关联的依赖性信息预判,并提前锁定候选服务执行过程中的平台运动行为以及所需资源开销;在执行服务选择处理时,服务使用者依据自身的优先级对于候选服务的使用具有不同的优先权,如果候选服务的占用状态、候选服务执行所需资源开销或行为信息无法满足时将触发服务抢占流程,此刻将根据实际环境状态优先保障高优先级使用者对于候选服务的调用。
2.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:机载SOA平台提供的第i个服务的信息,其中,sd i 为静态功能性描述信息子元素,dd i 为动态指标性描述信息子元素,ud i 为服务占用状态信息子元素;在上述三个子元素中,sd i 为仅包含服务提供者的WSDL服务描述文件中的数据类型“types”、服务提供的operation的输入和输出消息“message”、服务提供的端口信息“portType”和每个服务提供的具体操作“operation”标签描述信息的XML文件,主要是服务的静态功能操作接口描述;静态功能性描述信息部分仅通过布隆过滤器进行描述,服务分发的重点内容为服务的动态指标性描述信息以及占用状态信息部分,接收方主要根据不同服务提供者的动态指标部分以及服务的当前运行状态情况进行选择。
4.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:机载平台通信网络包含:具有服务交互基础设施以及服务与平台信息缓存的机载SOA平台A、机载SOA平台B、机载SOA平台C、机载SOA平台D和机载SOA平台E;各机载SOA平台均接入机载平台通信网络,并进行服务的发布和服务信息接收,每个节点将接收到的信息存储在服务与平台信息缓存中,通过机载SOA平台,服务提供者和服务使用者实现服务的发布与服务的选择。
5.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:机载SOA平台在执行服务选择的过程中需要根据机载SOA平台现有动态行为信息,并结合所选服务执行过程中可能产生的平台行为变化进行兼容性判断,决策所选服务是否可以有效执行;如果存在不兼容的行为并且被锁定,则该行为是配合完成其它服务的调用所执行的行为,不允许改变,在进行服务选择时需要根据锁定者优先级进行抢占处理。
6.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:服务发布时,每个机载SOA平台节点按照组播的方式具体对平台服务信息和平台关联性信息进行封包发布:当前平台节点的静态标识信息,当前平台节点提供的服务信息、每个服务的动态指标属性信息及运行状态和每个服务的使用者信息,当前平台节点t时刻的每个资源的所有量信息、行为信息、每个行为锁定者信息,t到t j 时间段内每个资源的锁定量信息、每个资源的锁定者信息;服务的动态指标信息部分基于领域本体库进行描述,对于每个功能基于本体描述定义一个规范化的描述消息,每个平台节点将上述信息项封装成一个数据包后向机载平台通信网络中进行周期性发送。
7.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:不可重入的服务在运行过程中的状态转换,服务初始运行时处于空闲态,等待服务使用者的调用;处于空闲态的服务如果被服务使用者调用,则跳转到锁定态,并禁止其它服务使用者调用,服务执行完毕后,则跳转到空闲态;处于锁定态的服务如果被高优先级使用者抢占,则也会重新跳转到空闲态。
8.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:服务选择处理程序根据服务使用者所申请服务的静态功能性描述,判断当前节点缓存的服务集合中是否存在满足需求的候选服务,如果不存在则选择失败,退出并结束,否则得到候选服务并继续执行,判断候选服务动态指标是否满足需求,如果不满足则选择失败,退出并结束,否则继续判断得到的满足动态指标的候选服务当前是否被锁定,是则判断是否需要触发服务抢占,否则继续判断得到的未被锁定的候选服务执行所需的资源开销是否满足需求,如果不满足则判断是否需要触发服务抢占,满足则继续判断执行得到的满足资源开销的候选服务是否需要触发平台行为改变,否则锁定该候选服务,是则继续判断候选服务所触发的行为是否与平台现有行为兼容,否则判断是否需要触发服务抢占,是则锁定该候选服务;判断服务使用者是否选择了触发服务抢占,否则选择失败,退出并结束,是则继续触发执行服务抢占处理流程,服务抢占处理流程执行完后判断候选服务抢占是否成功,如果候选服务抢占失败,则服务选择也失败,退出并结束,成功则将满足服务使用者申请的候选服务的状态置为锁定态,禁止其它使用者调用;服务选择处理程序锁定满足服务使用者申请的候选服务执行过程中的资源预开销量以及平台行为设定;服务使用者调用的候选服务执行完后退出,并解锁候选服务占用的资源与平台行为。
9.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:在执行服务选择的处理流程中,服务使用者依据自身的优先级对于服务的使用具有不同的优先权,在选择条件无法满足时,触发服务抢占流程,由服务抢占处理程序触发低优先级使用者释放对所需服务的占有权,释放那些锁定了所需资源或平台行为的其它低优先级服务使用者的占有权,根据实际环境状态优先保障高优先级使用者对于服务的调用;在抢占处理执行过程中,按照服务、资源和行为锁定者的优先级顺序,服务抢占处理程序优先解锁更低优先级的服务使用者;在解除服务调用的过程中,将服务的状态解锁,同时解锁服务调用时预先锁定的资源开销以及平台行为信息,在解除被占用的资源以及行为后,从而满足高优先级使用者的需求;服务执行完毕时,也将自行解锁对资源或者平台行为的占用情况。
10.如权利要求1所述的机载SOA平台关联性服务发布与选择方法,其特征在于:服务抢占处理程序首先判断服务使用者所申请的候选服务的当前使用者的优先级是否低于当前申请者,否则抢占失败并结束,是则向候选服务提供节点和当前使用者发起服务释放请求;判断服务使用者所请求的候选服务是否成功被当前使用者释放,否则抢占失败并结束,是则继续判断是否满足服务使用者所请求的候选服务执行所需的资源开销,否则触发由于“所申请的候选服务所需资源不足所触发的抢占”处理,是则转至判断候选服务执行是否需要触发平台行为改变,否则抢占成功并结束,是则转至判断服务使用者所申请的候选服务触发的行为是否与平台现有行为兼容,否则触发由于“所申请的候选服务触发的行为与平台现有行为不兼容所触发的抢占”处理,是则抢占成功并结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811418084.5A CN109561143B (zh) | 2018-11-26 | 2018-11-26 | 机载soa平台关联性服务发布与选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811418084.5A CN109561143B (zh) | 2018-11-26 | 2018-11-26 | 机载soa平台关联性服务发布与选择方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109561143A CN109561143A (zh) | 2019-04-02 |
CN109561143B true CN109561143B (zh) | 2021-05-07 |
Family
ID=65867548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811418084.5A Active CN109561143B (zh) | 2018-11-26 | 2018-11-26 | 机载soa平台关联性服务发布与选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109561143B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110311896B (zh) * | 2019-05-28 | 2021-06-15 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 机载平台服务注册中心系统 |
CN110572283B (zh) * | 2019-08-30 | 2022-05-17 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 机载平台服务交互接力控制系统 |
CN111124532A (zh) * | 2019-11-29 | 2020-05-08 | 北京浪潮数据技术有限公司 | 一种服务加载方法、装置及电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1845075A (zh) * | 2006-05-11 | 2006-10-11 | 上海交通大学 | 面向服务的网格高性能计算作业调度方法 |
CN103067297A (zh) * | 2013-01-25 | 2013-04-24 | 中国科学院声学研究所 | 一种基于资源消耗预测的动态负载均衡方法及装置 |
CN103227723A (zh) * | 2013-05-14 | 2013-07-31 | 浙江宇天科技股份有限公司 | 一种服务发布方法、服务发布服务器和服务注册机 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8914843B2 (en) * | 2011-09-30 | 2014-12-16 | Oracle International Corporation | Conflict resolution when identical policies are attached to a single policy subject |
-
2018
- 2018-11-26 CN CN201811418084.5A patent/CN109561143B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1845075A (zh) * | 2006-05-11 | 2006-10-11 | 上海交通大学 | 面向服务的网格高性能计算作业调度方法 |
CN103067297A (zh) * | 2013-01-25 | 2013-04-24 | 中国科学院声学研究所 | 一种基于资源消耗预测的动态负载均衡方法及装置 |
CN103227723A (zh) * | 2013-05-14 | 2013-07-31 | 浙江宇天科技股份有限公司 | 一种服务发布方法、服务发布服务器和服务注册机 |
Non-Patent Citations (1)
Title |
---|
TACTICS TSI architecture a European reference architecture for tactical soa;ANNE D,TOBIA S,et;《IEEE》;20160623;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109561143A (zh) | 2019-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Longo et al. | Stack4Things: a sensing-and-actuation-as-a-service framework for IoT and cloud integration | |
Blair et al. | Reflection, self-awareness and self-healing in openorb | |
US8719780B2 (en) | Application server with a protocol-neutral programming model for developing telecommunications-based applications | |
EP3461087B1 (en) | Network-slice resource management method and apparatus | |
CN109561143B (zh) | 机载soa平台关联性服务发布与选择方法 | |
US8788580B2 (en) | Event broker for an improved application server platform for telecom-based applications | |
Meier et al. | Taxonomy of distributed event-based programming systems | |
US7925710B2 (en) | Simultaneous API exposure for messages | |
Longo et al. | Stack4things: An openstack-based framework for iot | |
US20110167182A1 (en) | Transport prioritization based on message type | |
WO2021227999A1 (zh) | 云计算服务系统和方法 | |
Bruneo et al. | Mobile middleware: Definition and motivations | |
WO2004002062A1 (en) | A policy management method and system | |
CN115086166A (zh) | 计算系统、容器网络配置方法及存储介质 | |
EP3528112B1 (en) | Management ecosystem of superdistributed hashes | |
Loyall et al. | Dynamic policy‐driven quality of service in service‐oriented information management systems | |
CN109922139B (zh) | 异构网络的动态服务发现与发布方法 | |
Kang et al. | Android RMI: a user-level remote method invocation mechanism between Android devices | |
Schmidt et al. | Addressing the challenges of mission-critical information management in next-generation net-centric pub/sub systems with opensplice dds | |
Takalo-Mattila et al. | Architecture for mixed criticality resource management in Internet of Things | |
Cavalieri et al. | Interoperability between OPC UA and oneM2M | |
Mascolo et al. | Survey of middleware for networked embedded systems | |
Paniagua | Discovery and push notification mechanisms for mobile cloud services | |
Scholliers et al. | Ambient contracts: verifying and enforcing ambient object compositions à la carte | |
CN116112560B (zh) | 基于Reactive机制的数据上行与代理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |