一种RESTful架构下的中间件注册方法

文档序号:6546624阅读:118来源:国知局
一种RESTful架构下的中间件注册方法
【专利摘要】本发明公开了一种RESTful架构下的中间件注册方法,属于通信【技术领域】。该方法包括以下步骤:步骤一:向中间件的上层中间件管理中心发送请求注册的服务消息;步骤二:上层接收到来自下层的注册消息后:如果可以处理该类消息,则处理后将结果返回中间件,并向更高层中间件管理中心备案;如果无法处理,则将中间件发来的服务消息转发到高层中间件管理中心,以此类推;步骤三:若注册成功,则由系统返回中间件在泛在网内的唯一标识码,并通过消息服务形式播发给与该中间件相关的节点或管理中心;步骤四:若注册失败,则由系统向中间件返回消息告知原因及下一步做法;步骤五:注册成功的节点开始工作。
【专利说明】一种RESTfuI架构下的中间件注册方法
【技术领域】
[0001]本发明属于通信【技术领域】,涉及一种RESTful架构下的中间件注册方法。
【背景技术】
[0002]REST指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。中间件是网络环境中运行于操作系统与应用软件之间,可以简化应用软件的复杂性、克服网络环境多种挑战的一类系统软件。
[0003]基于Web的泛在网总体架构在具体实现中,采用中间件的形式完成资源的抽象及其它如资源标识、描述、管理等功能。中间件从逻辑上位于感知层设备、WoT业务网关和WoT业务平台这些层次结构之间,以及他们和资源开放对象(应用)之间,是WoT各层次与应用的连接纽带。从实现的角度看,中间件是运行在WoT业务网关和WoT业务平台本身或其它的特定网元中。中间件作为抽象层,为上层应用程序屏蔽了底层硬件设备、通信协议、管理机制等的复杂性和异构性,在其运行环境中提取数据和能力,同时又向上层的应用以Web API形式提供资源,完成开放和业务的聚合。

【发明内容】

[0004]有鉴于此,本发明的目的在于提供一种RESTful架构下的中间件注册方法,其中包括中间件服务消息的规定方法、REST架构下中间件的分类、REST架构下中间件注册、启用、注销和禁用以及REST架构下中间件状态监测。
[0005]为达到上述目的,本发明提供如下技术方案:
[0006]一种RESTful架构下的中间件注册方法,包括以下步骤:步骤一:向中间件的上层中间件管理中心发送请求注册的服务消息;步骤二:上层接收到来自下层的注册消息后:如果可以处理该类消息,则处理后将结果返回中间件,并向更高层中间件管理中心备案;如果无法处理,则将中间件发来的服务消息转发到高层中间件管理中心,以此类推;步骤三:若注册成功,则由系统返回中间件在泛在网内的唯一标识码,并通过消息服务形式播发给与该中间件相关的节点或管理中心;步骤四:若注册失败,则由系统向中间件返回消息告知原因及下一步做法;步骤五:注册成功的节点开始工作。
[0007]进一步,步骤一中的服务消息包括中间件服务消息目标、消息头、消息体和消息总体格式四部分;
[0008]所述消息目标包括以下几点:1)提供一个单一的统一的消息API ;2)提供一个API,能创建匹配现存的服务消息应用使用的消息格式;3)支持开发异构应用,可跨越不同的操作系统、机器架构和计算机语言;4)支持在消息中包含可扩展标签语言(XML)页面;
[0009]所述消息头包括(但不完全包括)以下字段:I)MSOTestination ;2)MSGDeliveryMode ;3)MSGTimestamp ;4)MSGReplyTo ;5)MSGRedelivered ;6)MSGType ;7)MSGLength ;8)MSGPriority ;9)MSGMiddlewareID ;
[0010]所述消息体包括以下几部分:1)消息ID,标识当前发送消息的唯一 ID ;2)屏蔽位,用位标识当前数据包中每个资源是否传输了数据:“0”表示未传输,“I”表示传输;3)数据位,对应资源的数据值;4)数据校验位:用于标识校验发送数据与消息的正确性;
[0011]所述消息总体格式由消息头和消息体组成,消息头长度一定,为16字节,消息体根据各消息发送者的数量多少而长度可变。
[0012]进一步,所述步骤中的中间件按照中间件在REST架构泛在网业务环境下业务场景中所处的不同层次,中间件可分为设备级中间件、功能级中间件和业务级中间件三大类;所述设备级中间件主要负责设备交互、屏蔽掉协议细节、提供统一访问编程接口 ;所述功能级中间件主要实现某些功能点的服务提供(如数据存储服务、视频等大文件传输、突发事件预警),独立于业务,适应于不同业务需求;所述业务级中间件用于组合各功能级中间件,以资源管理系统的形式提供平台业务级的接口,对外部系统提供统一的资源和数据接收、存储和转发服务。
[0013]进一步,REST架构下中间件在完成注册后,默认状态为禁用,要切换到“启用”状态,包括以下步骤:1)中间件向泛在资源管理平台发起“启用”的请求消息;2)泛在资源管理平台对该消息进行合法性验证,包括消息的数据校验码、中间件ID、中间件类型和请求的类型等的验证;3)若验证通过,则执行“启用中间件”操作,若不通过,则返回失败的原因;
4)泛在资源管理平台向其余节点广播启用该中间件的消息。
[0014]进一步,在以下两种可能的情况下需要禁用某个或多个中间件:1)由于系统需要而禁用中间件;2)由于中间件自身的需要而请求禁用。
[0015]进一步,所述的由于系统需要而禁用中间件的情况下,包括以下两个步骤:1)泛在资源管理平台直接发出“禁用中间件”指令,将中间件状态置为“禁用” ;2)泛在资源管理平台将该消息广播给其他节点。
[0016]进一步,所述的因中间件自身需要而请求禁用时,包括以下步骤:1)中间件向泛在资源管理平台发出请求“禁用”的服务消息;2)泛在资源管理平台对该消息进行合法性验证,包括消息的数据校验码、中间件ID、中间件类型和请求的类型的验证;3)若验证通过,则执行“禁用中间件”操作,若不通过,则返回失败的原因;4)泛在资源管理平台向其余节点广播禁用该中间件的消息。
[0017]进一步,泛在网内的中间件需要退出当前系统时,需要进行“注销”,清空当前中间件的注册信息和占用的缓存空间,“注销”过程具体包括以下步骤:1)当前已注册的中间件向上层平台逐级传递注销请求;2)最后在泛在资源管理平台收到该服务消息之后,向下层逐级传递执行指令;3)当中间件从系统中注销后,泛在资源管理平台向其他相关节点广播此消息,完成注销操作。
[0018]进一步,还包括对REST架构下中间件的状态进行监测,采用心跳方式实现中间件的状态监测,包括以下步骤:1)泛在资源管理平台向系统中需要监测的中间件发送含有心跳数据的服务消息;2)泛在资源管理平台启动一个低级别的线程,利用线程检测中间件端的回应;3)每隔一段时间t (时间精度根据系统要求高低而定),重复步骤I)和步骤2) ;4)若超过时间T还没有收到中间件端的回应,应立即再次发送心跳消息,在连续发送η次心跳消息后仍未得到响应,即在ηΤ时间内没有收到中间件回传的任何服务消息,则认为中间件已掉线或连接不可用。
[0019]本发明的有益效果在于:本发明提出了一种RESTful架构下的中间件注册方法,并针对中间件在泛在网系统中所处的不同层次分为三类(设备级中间件、功能级中间件和服务级中间件),给出了每层差异化的注册方法。
【专利附图】

【附图说明】
[0020]为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:
[0021]图1为泛在网中间件服务消息格式示意图;
[0022]图2为REST架构下中间件注册方法示意图;
[0023]图3为REST架构下中间件注册消息实例;
[0024]图4为REST架构下中间件启用方法示意图;
[0025]图5为REST架构下中间件启用消息实例;
[0026]图6为REST架构下系统直接禁用中间件方法示意图;
[0027]图7为REST架构下中间件自身请求禁用方法示意图;
[0028]图8为REST架构下中间件禁用消息实例;
[0029]图9为REST架构下中间件注销方法示意图;
[0030]图10为REST架构下中间件注销消息实例;
[0031]图11为REST架构下中间件状态监测方法示意图。
【具体实施方式】
[0032]下面将结合附图,对本发明的优选实施例进行详细的描述。
[0033]本发明实施例的REST架构下中间件服务消息的规范方法,具体来说:
[0034]I)中间件服务消息的目标为:
[0035]1.1)提供一个单一的统一的消息API ;
[0036]1.2)提供一个API,能创建匹配现存的服务消息应用使用的消息格式;
[0037]1.3)支持开发异构应用,可跨越不同的操作系统、机器架构和计算机语言;
[0038]1.4)支持在消息中包含可扩展标签语言(XML)页面。
[0039]2)中间件服务消息的消息头包括(但不一定完全包括)以下字段:
[0040]2.1)MS⑶estination:包含由发送方指定的目的地对象;
[0041]2.2)MSOTeliveryMode:包含消息发送时指定的发送模式;
[0042]2.3)MSGTimestamp:包含消息发送的时间戳,便于后期检查;
[0043]2.4)MSGReplyTo:包含由发送消息的中间件指定的消息回传目的地地址;
[0044]2.5)MSGRedelivered:包含服务消息由于受某种因素影响而没被响应后重新转发的次数;
[0045]2.6)MSGType:包含中间件发送的服务消息的类型,该类型由负责消息的中间件系统创建和定义;
[0046]2.7)MSGLength:包含了消息发送时的总长度;
[0047]2.8)MSGPriority:包含了消息的优先级,O是最低的优先级,9是最高的优先级,将O - 4看作普通优先级,5 - 9看作加急优先级;
[0048]2.9)MSGMiddlewareID:包含中间件ID,用来标识发送该消息的中间件。[0049]3)中间件服务消息的消息体包括:
[0050]3.1)消息ID,标识当前发送消息的唯一 ID ;
[0051]3.2)屏蔽位,用位标识当前数据包中每个资源是否传输了数据:“0”表示未传输,“ I ”表不传输;
[0052]3.3)数据:对应资源的数据值;
[0053]3.4)数据校验位:用于标识校验发送数据与消息的正确性。
[0054]4)中间件服务消息的消息总体格式:由消息头和消息头组成,消息头长度一定,为16字节,消息体根据各消息发送者的数量多少而长度可变,具体格式示意图如图1所示。
[0055]作为优化方案,泛在事物都可认为是资源的各种不同表现形式。
[0056]本发明实施例的REST架构中间件分类方法,具体如下:
[0057]按照中间件在REST架构泛在网业务环境下业务场景中所处的不同层次,中间件可分为设备级中间件、功能级中间件和业务级中间件三大类。
[0058]作为优化方案,设备级中间件主要负责设备交互、屏蔽掉协议细节、提供统一访问编程接口。
[0059]作为优化方案,功能级中间件主要专注于某些功能点的服务提供(如如数据存储服务、视频等大文件传输、突发事件预警),独立于业务,适应于不同业务需求,在完整业务复用、灵活业务组织方面的发挥出巨大优势,其核心目标是提升泛在网基础设施的业务敏捷性。
[0060]作为优化方案,相对于功能级中间件,业务级中间件在更高的层次上提供服务,它组合各功能级中间件,以资源管理系统的形式提供平台业务级的接口,对外部系统提供统一的资源和数据接收、存储和转发等服务。
[0061]本发明实施例的REST架构中间件注册、启用、注销和禁用方法如下:
[0062]DREST架构下中间件“注册”方法如图2所示,包括以下步骤:
[0063]步骤一:由中间件向上层平台发送“请求注册”的服务消息;
[0064]步骤二:上层平台收到下层中间件的注册消息后,转发到泛在资源管理平台进行注册;
[0065]步骤三:泛在资源管理平台向泛在资源标识注册中心申请唯一标识;
[0066]步骤四:泛在资源标识注册中心返回中间件的标识和注册信息,通过下层平台将结果回传给中间件。
[0067]作为优化方案,REST架构下中间件“注册”时传递的消息格式,包括具备MSGDestination>MSGDeIiveryMode>MSGRepIyTo>MSGPriority 和 MSGMiddlewareID 的消息头和具备容纳32个中间件资源同时注册的消息体。
[0068]作为优化方案,一个中间件注册消息实例为:单次注册过程中,对资源编号为I和4的中间件进行注册发送的消息格式如图3所示。
[0069]2)REST架构下中间件“启用”方法,具体来说:REST架构下中间件在完成注册后,默认状态为禁用,要切换到“启用”状态,包括以下步骤(如图4):
[0070]步骤一:中间件向泛在资源管理平台发起“启用”的请求消息;
[0071]步骤二:泛在资源管理平台对该消息进行合法性验证,包括消息的数据校验码、中间件ID、中间件类型和请求的类型等的验证;[0072]步骤三:若验证通过,则执行“启用中间件”操作,若不通过,则返回失败的原因;
[0073]步骤四:泛在资源管理平台向其余节点广播启用该中间件的消息。
[0074]作为优化方案,REST架构下中间件“启用”时传递的消息格式,包括具备MSGDe st inat i on > MSGDe I i veryMode > MSGRep I yTo > MSGPr i or i ty 和 MSGMiddlewareID 的消息头和具备容纳32个中间件资源同时启用的消息体。
[0075]作为优化方案,一个中间件“启用”消息实例为:单次注册过程中,对资源编号为2和3的中间件请求“启用”的消息格式如图5所示。
[0076]3) REST架构下中间件“禁用”方法,具体说来:
[0077]当遇突发事件,系统需要禁用某一个或多个中间件的时候,包括以下步骤(如图6):
[0078]步骤一:泛在资源管理平台直接发出“禁用中间件”指令,将中间件状态置为“禁用”;
[0079]步骤二:泛在资源管理平台将该消息广播给其他节点。
[0080]当中间件由于某种原因或故障,需要向系统请求禁用,包括以下步骤(如图7):
[0081]步骤一:中间件向泛在资源管理平台发出请求“禁用”的服务消息;
[0082]步骤二:泛在资源管理平台对该消息进行合法性验证,包括消息的数据校验码、中间件ID、中间件类型和请求的类型等的验证;
[0083]步骤三:若验证通过,则执行“禁用中间件”操作,若不通过,则返回失败的原因;
[0084]步骤四:泛在资源管理平台向其余节点广播禁用该中间件的消息。
[0085]作为优化方案,REST架构下中间件“禁用”时传递的消息格式,包括具备MSGDeIiveryMode>MSGTimestamp>MSGRedeIivered>MSGPriority 和 MSGMiddlewareID 的消息头和具备容纳32个中间件资源同时启用的消息体。
[0086]作为优化方案,一个中间件“禁用”消息实例为:单次注册过程中,对资源编号为I和30的中间件请求“禁用”的消息格式如图8所示。
[0087]4) REST架构下中间件“注销”方法,具体说来:当泛在网内的中间件需要退出当前系统,则需要进行“注销”,清空当前中间件的注册信息和占用的缓存空间,“注销”过程包括以下步骤(如图9):
[0088]步骤一:当前已注册的中间件向上层平台逐级传递注销请求;
[0089]步骤二:最后在泛在资源管理平台收到该服务消息之后,向下层逐级传递执行指令;
[0090]步骤三:当中间件从系统中注销后,泛在资源管理平台向其他相关节点广播此消息,完成注销操作。
[0091]作为优化方案,REST架构下中间件“注销”时传递的消息格式,包括具备MSGDe st inat i on > MSGDe I i veryMode > MSGRep I yTo > MSGPr i or i ty 和 MSGMiddlewareID 的消息头和具备容纳32个中间件资源同时启用的消息体。
[0092]作为优化方案,一个中间件“注销”消息实例为:单次注销过程中,对资源编号为
2、4、5的中间件请求“注销”的消息格式如图10所示。
[0093]5)本发明实施例的中间件状态监测方法,具体说来:
[0094]为了确保链接的有效性,让泛在资源管理平台总会获得中间件的在线状态,采用心跳方式实现中间件的状态监测,步骤(如图11)如下:
[0095]步骤一:泛在资源管理平台向系统中需要监测的中间件发送含心跳数据的服务消息;
[0096]步骤二:泛在资源管理平台启动一个低级别的线程,利用线程检测中间件端的回应;
[0097]步骤三:每隔一段时间t (时间精度根据系统要求高低而定),重复步骤一和步骤-* ;
[0098]步骤四:若超过时间T还没有收到中间件端的回应,应立即再次发送心跳消息,在连续发送η次心跳消息后仍未得到响应,即在ηΤ时间内没有收到中间件回传的任何服务消息,,则认为中间件已掉线或连接不可用。
[0099]作为优化方案,由泛在资源管理平台发送的用于中间件状态监测的消息格式,包括具备 MSGDestination、MSGDeIiveryMode> MSGTimestamp> MSGRepIyTo> MSGType 和MSGMiddlewareID的消息头和空的消息体。
[0100]最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。
【权利要求】
1.一种RESTful架构下的中间件注册方法,其特征在于:包括以下步骤: 步骤一:向中间件的上层中间件管理中心发送请求注册的服务消息; 步骤二:上层接收到来自下层的注册消息后:如果可以处理该类消息,则处理后将结果返回中间件,并向更高层中间件管理中心备案;如果无法处理,则将中间件发来的服务 消息转发到高层中间件管理中心,以此类推; 步骤三:若注册成功,则由系统返回中间件在泛在网内的唯一标识码,并通过消息服务 形式播发给与该中间件相关的节点或管理中心; 步骤四:若注册失败,则由系统向中间件返回消息告知原因及下一步做法; 步骤五:注册成功的节点开始工作。
2.根据权利要求1所述的一种RESTful架构下的中间件注册方法,其特征在于:步骤一中的服务消息包括中间件服务消息目标、消息头、消息体和消息总体格式四部分;所述消息目标包括以下几点:1)提供一个单一的统一的消息API ;2)提供一个API,能创建匹配现存的服务消息应用使用的消息格式;3)支持开发异构应用,可跨越不同的操作系统、机器架构和计算机语言;4)支持在消息中包含可扩展标签语言页面;所述消息头包括以下字段:I)MSGDestination ;2)MSGDeIiveryMode ;3)MSGTimestamp ;4)MSGReplyTo ;5)MSGRedelivered ;6)MSGType ;7)MSGLength ;8)MSGPriority ;9)MSGMiddlewareID ;所述消息体包括以下几部分:1)消息ID,标识当前发送消息的唯一 ID ;2)屏蔽位,用位标识当前数据包中每个资源是否传输了数据:“0”表示未传输,“I”表示传输;3)数据位,对应资源的数据值;4)数据校验位:用于标识校验发送数据与消息的正确性;所述消息总体格式由消息头和消息体组成,消息头长度一定,为16字节,消息体根据各消息发送者的数量多少而长度可变。
3.根据权利要求1所述的一种RESTful架构下的中间件注册方法,其特征在于:所述步骤中的中间件按照中间件在REST架构泛在网业务环境下业务场景中所处的不同层次,中间件可分为设备级中间件、功能级中间件和业务级中间件三大类;所述设备级中间件主要负责设备交互、屏蔽掉协议细节、提供统一访问编程接口 ;所述功能级中间件主要实现某些功能点的服务提供,独立于业务,适应于不同业务需求;所述业务级中间件用于组合各功能级中间件,以资源管理系统的形式提供平台业务级的接口,对外部系统提供统一的资源和数据接收、存储和转发服务。
4.根据权利要求1所述的一种RESTful架构下的中间件注册方法,其特征在于:REST架构下中间件在完成注册后,默认状态为禁用,要切换到“启用”状态,包括以下步骤:. 1)中间件向泛在资源管理平台发起“启用”的请求消息;. 2)泛在资源管理平台对该消息进行合法性验证,包括消息的数据校验码、中间件ID、中间件类型和请求的类型等的验证; . 3)若验证通过,则执行“启用中间件”操作,若不通过,则返回失败的原因; .4)泛在资源管理平台向其余节点广播启用该中间件的消息。
5.根据权利要求1所述的一种RESTful架构下的中间件注册方法,其特征在于:在以下两种可能的情况下需要禁用某个或多个中间件:1)由于系统需要而禁用中间件;2)由于中间件自身的需要而请求禁用。
6.根据权利要求5所述的一种RESTful架构下的中间件注册方法,其特征在于:所述的由于系统需要而禁用中间件的情况下,包括以下两个步骤:1)泛在资源管理平台直接发出“禁用中间件”指令,将中间件状态置为“禁用”;2)泛在资源管理平台将该消息广播给其他节点。
7.根据权利要求5所述的一种RESTful架构下的中间件注册方法,其特征在于:所述的因中间件自身需要而请求禁用时,包括以下步骤: 1)中间件向泛在资源管理平台发出请求“禁用”的服务消息; 2)泛在资源管理平台对该消息进行合法性验证,包括消息的数据校验码、中间件ID、中间件类型和请求的类型的验证; 3)若验证通过,则执行“禁用中间件”操作,若不通过,则返回失败的原因; 4)泛在资源管理平台向其余节点广播禁用该中间件的消息。
8.根据权利要求1所述的一种RESTful架构下的中间件注册方法,其特征在于:泛在网内的中间件需要退出当前系统时,需要进行“注销”,清空当前中间件的注册信息和占用的缓存空间,“注销”过程具体包括以下步骤: 1)当前已注册的中间件向上层平台逐级传递注销请求; 2)最后在泛在资源管理平台收到该服务消息之后,向下层逐级传递执行指令; 3)当中间件从系统中注销后,泛在资源管理平台向其他相关节点广播此消息,完成注销操作。
9.根据权利要求1所述的一种RESTful架构下的中间件注册方法,其特征在于:还包括对REST架构下中间件的状态进行监测,采用心跳方式实现中间件的状态监测,包括以下步骤: 1)泛在资源管理平台向系统中需要监测的中间件发送含有心跳数据的服务消息; 2)泛在资源管理平台启动一个低级别的线程,利用线程检测中间件端的回应; 3)每隔一段时间t,重复步骤I)和步骤2); 4)若超过时间T还没有收到中间件端的回应,应立即再次发送心跳消息,在连续发送η次心跳消息后仍未得到响应,即在ηΤ时间内没有收到中间件回传的任何服务消息,则认为中间件已掉线或连接不可用。
【文档编号】G06F9/44GK103986709SQ201410205753
【公开日】2014年8月13日 申请日期:2014年5月15日 优先权日:2014年5月15日
【发明者】张鹏, 程方, 蒋明浪, 卢毓岑, 朱建虎, 张瑞, 史涛 申请人:重庆邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1