一种网络服务的处理方法和系统的制作方法

文档序号:7919941阅读:198来源:国知局
专利名称:一种网络服务的处理方法和系统的制作方法
技术领域
本发明涉及网络服务的管理,具体涉及一种网络服务的处理方法和系统。
背景技术
为了便于实现软件应用系统(Application)间的集成或功能重用,人们经 常会将应用系统的功能对外暴露成网络服务(service)供其它应用系统调用。 在网络(如企业网、互联网)上分散着大量的网络服务,每个网络服务用于实 现一个特定的功能,具有一个特定的能力。网络服务的类型或协议也是多样的, 例如有web service网络服务、rest网络服务、http网络服务、socket网络服务、 ftp网络服务、smtp网络服务等。
应用系统要调用网络上一现有网络服务通常采用的做法是首先要了解网 络服务的类型或网络服务采用的协议,然后根据网络服务类型或网络服务采用 的协议编写特定的调用程序。例如,如果要调用web service网络服务就编写 程序采用WSDL ( Web服务器描述语言)+ Soap (简单对象访问协议)的方 式调用网络服务;如果要调用socket (套接字)网络服务就编写socket client 程序调用网络服务等。
在现有技术中调用不同的网络服务时,需要为该服务编写相应的调用程 序,由于网络服务的类型及接口参数一般会存在差异,当网络服务的类型或接 口参数发生变化时,由于编写的调用程序不具有可扩展性,通用性差,需要对 该网络服务的调用程序重新编写,否则无法正常的进行网络服务调用,这样需 要重复的为被调用的网络服务编写调用程序,造成了严重的资源浪费,而且应
用系统釆用上述方式调用网络服务时,得到的网络非常零散,不便管理。

发明内容
本发明所要解决的技术问题是在应用系统调用网络服务时重复的为被调 用的网络服务编写调用程序的问题,以此节约资源,方便网络服务的统一管理。
为了解决上述技术问题,本发明具体是这样实现的 一种网络服务的处理方法,包括
步骤A,注册待调用网络服务的基本信息,为注册成功的网络服务生成网 络服务编号、匹配网络服务适配器,为调用网络服务的应用系统定购指定编号 的网络服务;
步骤B,应用程序接口 API通过统一的网络服务地址将接收到的应用系统
发出的服务调用请求消息发送给控制模块;
步骤C,通过控制模块判断应用系统是否定购了所述待调用网络服务,若
是,则转入步骤E,否则,转入步骤D;
步骤D,控制模块向应用系统发出拒绝调用网络服务的应答消息;
步骤E,控制模块通过为所述待调用服务匹配的网络服务适配器向对应的
网络服务器发出服务调用请求消息,进行网络服务调用,得到网络服务器的响
应消息后,将执行结果返回给应用系统。
在所述的处理方法中,所述步骤C具体是这样实现的
步骤Cl,控制模块解析接收到的服务调用请求消息获得网络服务编号;
步骤C2,根据网络服务编号确定待调用网络服务是否是所述应用系统定
购的指定编号的网络服务,若是,则转入步骤E,否则转入步骤D。
在所述的处理方法中,所述基本消息包括,网络服务类型、服务地址、网
络服务输入参数、网络服务输出参数;
所述服务调用请求消息中携带服务调用参数;
所述服务调用参数包括,应用系统标识参数、网络服务编号、网络服务输
入参数值。
在所述的处理方法中,所述步骤E中的控制模块在发出服务调用请求消 息前判断所述应用系统定购的网络服务是否正常,若是,则转入步骤E,否则, 控制模块向应用系统发出网络服务异常的应答消息;
所述判断所述应用系统定购的网络服务是否正常是根据检测网络服务状 态确定的。
在所述的处理方法中,所述检测网络服务状态包括 步骤El,定时触发控制模块;
步骤E2,从接收到的网络服务的基本信息中获到服务地址; 步骤E3,所述控制模块向服务地址对应的网络服务器发送调用请求消息, 若能够接收到所述网络服务器返回的响应消息,则网络服务状态为正常,转入 步骤E,否则,网络服务状态异常,控制模块向应用系统发出网络服务异常的 应答消息;
步骤E4,将获得的网络服务状态保存。
在所述的处理方法中,所述步骤E中控制模块在发起服务调用请求消息 前,将接收到的网络服务输入参数值转换为所述网络服务器识别的数据格式; 所述网络服务器识别的数据格式是根据服务类型确定的。 一种网络服务的处理系统,所述系统用于应用系统调用网络服务,包括, 控制模块、第一存储模块、第二存储模块、网络服务适配器、地址模块以及应 用程序接口 API;
所述第一存储模块用于保存待调用网络服务的基本信息以及控制模块为 所述网络服务生成的网络服务编号;所述第二存储模块用于保存应用系统与其 可调用的网络服务编号的映射表;所述网络服务适配器,根据网络服务的基本 信息确定与其匹配的待调用网络服务;所述地址模块,将通过API发出的服 务调用请求消息通过其提供的统一的网络服务地址发送给控制模块;所述控制 模块,通过网络服务适配器向对应的网络服务器发出服务调用请求消息,进
行网络^^务调用。
所述的网络服务的处理系统中,所述API由应用系统或被集成到应用系
统上的客户机程序提供。
采用本发明提供的网络服务的处理方法和系统,通过对外提供统一的网络 服务地址接收来自其它应用系统的网络服务调用请求,以一种统一的方式非常 方便的调用网络服务,不需要关注服务的具体协议以及具体位置,通过适配器 的方式将零散的网络服务统一接入到网络服务处理系统,实现了网络服务统一 接入、统一适配、统一控制、统一调用以及异常处理,提高了网络服务调用程 序的扩展性,实现了对网络服务的统一管理。
总之采用本发明应用系统在对网络服务进行调用时,无需为被调用的网络 服务——编写调用程序,大大节约了资源,实现了对网络服务的统一管理,而 且降低了分布式系统间的耦合程度,提高了分布式系统的稳定性。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的 一部 分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不 当限定。
图l是本发明所述处理系统的结构示意图; 图2是网络服务注册以及网络服务定购的示意图; 图3是本发明网络服务的处理方法的实现流程图; 图4是检测网络服务状态的流程图。
具体实施例方式
下面结合附图和具体实施方式
对本发明做进一步的详细说明。 如图l所示,所述处理系统包括,控制模块、第一存储模块、第二存储模 块、网络月l务适配器(Service Adapter )、地址才莫块以及API( Application Program
Interface,应用程序4妻口 )。
所述第一存储模块用于保存已注册的网络服务的基本信息以及控制模块 为该网络服务生成的网络服务编号,所述基本信息包括网络服务类型、服务 地址、网络服务输入参数、网络服务输出参数。所述网络服务类型可以是web service类型、rest类型、socket类型或ftp类型等。
所述第二存储模块用于保存应用系统与其要调用的网络服务编号的映射表。
所述网络服务适配器,根据已注册网络服务的基本信息确定与其匹配的网 络服务,以便在接收到控制模块发出服务调用请求消息后对网络服务进行调 用。
所述API为应用系统调用网络服务提供传输接口 。所述API可以由所述 Client (客户机程序)提供,所述客户机程序被集成到应用系统上,应用系统 只需要集成Client并且调用API来实现对网络服务的调用。所述API还可以 直接集成到应用系统上。
所述地址模块为传输网络服务调用请求提供统一的网络服务地址,将通过 API发出的所有应用系统调用网络服务的请求消息通过其提供的服务地址发 送给控制模块。
所述控制模块接收到服务调用请求消息,根据网络服务编号确定应用系统 需要调用的网络服务,并将网络服务输入参数进行格式转换得到网络服务可识 别的数据,通过网络服务适配器向服务地址对应的网络服务器发出请求实现对 指定服务的调用。
所述API可以由所述Client (客户机程序)提供,所述客户机程序被集成 到应用系统上,应用系统只需要集成Client并且调用API来实现对网络服务 的调用。所述API接口还可以直接集成到应用系统上。
如图2所示为网络服务注册以及网络服务定购的示意图。
S201,注册待接入网络服务的基本信息,控制模块为注册成功的网络服务
生成唯一的网络服务编号,用以识别网络服务,并将注册成功的网络服务的基 本信息、网络服务编号保存到第 一存储模块中。
S202,所述应用系统在发出调用已注册的网络服务请求消息前,需要先向 控制模块定购指定编号的网络服务,并将定购信息保存到第二存储模块中。所 述定购信息是指应用系统与其要调用的网络服务编号的映射表。
当待接入的网络服务的基本信息注册成功后,控制模块读取已保存的网络 服务类型,选择与所述网络服务类型匹配的网络服务适配器,若控制模块没有 找到与所述网络服务匹配的网络服务适配器,则根据该网络服务的协议进行网 络服务适配器的定制。例如,如果网络服务类型是Webservice网络服务就选 择web service网络服务适配器,如果网络服务类型是ftp网络服务就选择ftp 网络服务适配器。所述对WebService服务定制适配器,则需要根据SOAP协 议和WSDL规范实现WebService服务调用的功能。
如图3所示为本发明网络服务的处理方法的实现流程图
5301, 应用系统集成Client,通过调用Client提供的API来实现网络服务 调用,应用系统向所述API传入带有服务调用参数的调用请求消息。
所述API也可直接集成到应用系统上。所述服务调用参数包括应用系 统标识参数、网络服务编号、网络服务输入参数值。
5302, 根据SOAP协议和WSDL规范,所述API通过统一的网络服务地 址将所述服务调用请求消息发送给控制模块;
S303,控制模块解析接收到的调用请求消息,获得网络服务编号; S304,控制模块根据网络服务编号确定待调用网络服务; S305,判断所述应用系统是否定购了所述待调用网络服务,若是转入 S307,否则,转入S306;
所述S305具体包括,控制模块读取所述第二存储模块中保存的定购信息, 判断所述应用系统与网络服务编号的对应关系是否与保存的定购信息一致,若 是,则所述应用系统定购了所述网络服务,否则,没有定购所述网络服务。
S306,控制模块通过Client向应用系统发出拒绝调用网络服务的应答消

,&,
S307,根据保存的网络服务状态来判断所述应用系统定购的网络服务是否 正常,若是,则转入S309,否则,转入S308;
S308,控制模块通过Client向应用系统发出网络服务异常的应答消息;
S309,控制模块将接收到的网络服务输入参数值进行格式转换,转换为网 络服务器可识别的数据。
所述S309中网络服务输入参数值要转换的格式是根据被调用的网络服务 的服务类型来确定的,例如,被调用的网络服务是Web service服务,则对应 的应采用XSLT进行数据的格式转换。
S310,控制模块通过网络服务适配器向服务地址对应的网络服务器发起调 用请求消息,进行网络服务调用;
S311,控制模块获得网络服务的执行结果;
S312,控制模块通过Client向应用系统回复网络服务的执行结果。 如图4所示为检测网络服务状态的流程图 S401,设置定时器,定时触发控制模块;
S402,控制模块从第一存储模块中获取网络服务的基本信息,得到服务地
址;
S403,所述控制模块向服务地址对应的网络服务器发送服务调用请求消 息,若能够接收到所述网络服务器返回的响应消息,则网络服务状态为正常, 转入S404,否则,没有收到返回的响应消息,则网络服务状态异常。
例如,以Web Service服务为例来说明4全测服务状态的流程图,所述 WebService采用SOAP协议通过HTTP协议来调用的,因此当控制模块检测 WebService的服务状态时,所述控制模块通过HTTP协议向服务地址对应的 Web服务器发送SOAP请求消息,Web服务器将所述SOAP请求消息发送给 WebService,收到请求消息的WebService通过Web月l务器返回SOAP响应消
息给控制模块,此时,控制模块能够接收到网络服务器返回的响应消息,则说 明网络服务状态为正常,否则,没有接收到返回的响应消息,则网络服务状态 为异常。
S404 ,将获得的网络服务的状态进行保存;
重复S402-S404,直到^r测完所有网络H务的状态。
在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明 做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附权 利要求的保护范围。
权利要求
1、一种网络服务的处理方法,其特征在于包括步骤A,注册待调用网络服务的基本信息,为注册成功的网络服务生成网络服务编号、匹配网络服务适配器,为调用网络服务的应用系统定购指定编号的网络服务;步骤B,应用程序接口API通过统一的网络服务地址将接收到的应用系统发出的服务调用请求消息发送给控制模块;步骤C,通过控制模块判断应用系统是否定购了所述待调用网络服务,若是,则转入步骤E,否则,转入步骤D;步骤D,控制模块向应用系统发出拒绝调用网络服务的应答消息;步骤E,控制模块通过为所述待调用服务匹配的网络服务适配器向对应的网络服务器发出服务调用请求消息,进行网络服务调用,得到网络服务器的响应消息后,将执行结果返回给应用系统。
2、 如权利要求1所述的网络服务的处理方法,其特征在于,所述步骤C具 体是这样实现的步骤C1,控制模块解析接收到的服务调用请求消息获得网络服务编号; 步骤C2,根据网络服务编号确定待调用网络服务是否是所述应用系统定购 的指定编号的网络服务,若是,则转入步骤E,否则转入步骤D。
3、 如权利要求1或2所述的网络服务的处理方法,其特征在于 所述基本消息包括,网络服务类型、服务地址、网络服务输入参数、网络服务输出参数;所述服务调用请求消息中携带服务调用参数;所述服务调用参数包括,应用系统标识参数、网络服务编号、网络服务输 入参数值。
4、 如权利要求3所述的网络服务的处理方法,其特征在于 所述步骤E中的控制模块在发出服务调用请求消息前判断所述应用系统定 购的网络服务是否正常,若是,则转入步骤E,否则,控制模块向应用系统发出 网络服务异常的应答消息;所述判断所述应用系统定购的网络服务是否正常是根据检测网络服务状态 确定的。
5、 如权利要求4所述的网络服务的处理方法,其特征在于 所述检测网络服务状态包括步骤E1,定时触发控制模块;步骤E2,从接收到的网络服务的基本信息中获到服务地址; 步骤E3,所述控制模块向服务地址对应的网络服务器发送调用请求消息, 若能够接收到所述网络服务器返回的响应消息,则网络服务状态为正常,转入 步骤E,否则,网络服务状态异常,控制模块向应用系统发出网络服务异常的应 答消息;步骤E4,将获得的网络服务状态保存。
6、 如权利要求4所述的网络服务的处理方法,其特征在于 所述步骤E中控制模块在发起服务调用请求消息前,将接收到的网络服务输入参数值转换为所述网络服务器识别的数据格式;所述网络服务器识别的数据格式是根据服务类型确定的。
7、 一种网络服务的处理系统,所述系统用于应用系统调用网络服务,其特 征在于包括,控制模块、第一存储模块、第二存储模块、网络服务适配器、地址模块以 及应用程序接口 API;所述第一存储模块用于保存待调用网络服务的基本信息以及控制模块为所 述网络服务生成的网络服务编号;所述第二存储模块用于保存应用系统与其可 调用的网络服务编号的映射表;所述网络服务适配器,根据网络服务的基本信 息确定与其匹配的待调用网络服务;所述地址模块,将通过API发出的服务调用请求消息通过其提供的统一的网络服务地址发送给控制模块;所述控制模块,通过网络服务适配器向对应的网络服务器发出服务调用请求消息,进行网络服 务调用。
8、如权利要求7所述的网络服务的处理系统,其特征在于 所述API由应用系统或被集成到应用系统上的客户机程序提供。
全文摘要
本发明提出一种网络服务的处理方法和系统,所述方法包括,注册待调用网络服务的基本信息,为注册成功的网络服务生成网络服务编号、匹配网络服务适配器,为调用网络服务的应用系统定购指定编号的网络服务;API通过统一的网络服务地址将接收到的应用系统发出的服务调用请求消息发送给控制模块;通过控制模块判断应用系统是否定购了所述待调用网络服务,若是,则控制模块通过网络服务适配器向对应的网络服务器发出服务调用请求消息,进行网络服务调用,将执行结果返回给应用系统,否则控制模块向应用系统发出拒绝调用网络服务的应答消息。采用本发明无需为被调用的网络服务一一编写调用程序,节约了资源,实现了对网络服务的统一管理。
文档编号H04L29/06GK101388887SQ20081016722
公开日2009年3月18日 申请日期2008年10月15日 优先权日2008年10月15日
发明者鄢全文 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1