当前位置: 首页 > 专利查询>万德洪专利>正文

一种网络服务系统及实现方法技术方案

技术编号:4167216 阅读:165 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种网络服务系统,它将一个或多个服务节点,按照需要连接在一起组成服务流,并可以设置服务节点的输出方式,以便流向下一个服务节点,或流向一个数据集结点,或者提供一个获取输出的机制给下一个服务节点,而不必每次返回给调用者,从而减少总的网络流量,属于网络服务领域。

Network service system and implementation method

The invention relates to a network service system, it will be one or more service nodes are connected together in accordance with the needs of the service flow, the output and the setting up of service nodes, so that the flow of a service node, or to a data aggregation point, or provide a mechanism to obtain output to the next a service node, and it will be returned to the caller, thereby reducing overall network traffic, which belongs to the field of network service.

【技术实现步骤摘要】

本专利技术涉及一种网络服务系统,它将一个或多个服务节点,按照需要连接在一起组成服务流,并可以 设置服务节点的输出方式,以便流向下一个服务节点,或流向一个数据集结点,或者提供一个获取输出的 机制给下一个服务节点,而不必每次返回给调用者,从而减少总的网络流量,属于网络服务领域。
技术介绍
目前的网络服务规范,明确了如何发布、发现和调用网络服务。比如,著名的WSDL以及SOAP等。但 是,还没有相应的规范用以指导如何连接这些单个的网络服务,以便形成一个能够解决特定问题的服务流。 相应的,也较少关注如何在多个网络服务调用之间节约网络流量的问题。当前因为没有特别关注将网络服务组合为服务流的问题,忽视了网络服务如何组合的问题,因此没有 将输入和参数区别开来。两个服务节点能够组合在一起,至少需要前一节点的某个输出口能够与后一节点 的某个输入口相匹配。
技术实现思路
鉴于以上实际情况,本专利技术的目的在于提供一种网络服务系统,在这个系统中,每一个服务节点包含 控制服务执行的参数、需要此服务处理的数据输入和经此服务处理生成的输出,其中参数和输入不是必需 的;可以设置服务节点的输出方式,以便流向下一个服务节点,或流向一个数据集结点,或者提供一个获 取输出的机制给下一个服务节点,而不必每次返回给调用者; 一个或多个服务节点,可以按照需要连接在 一起组成服务流; 一个服务流的一次执行,称为一个任务, 一个服务流可以被多次执行。某些服务流的某个片断可能恰好由同一个提供者提供的多个服务节点组成。鉴于此,本专利技术提出让部 分服务提供者包含一个服务流片断执行引擎,以便调用者将由这个服务提供者提供的服务节点组成的服务 流片断作为整体提交给它执行,从而减少输入/输出在调用者和服务提供者之间的传输次数。不少网络服务,其处理程序相对它们要处理的数据来说,明显小许多。因此,本专利技术提出某些服务节 点的输出可以是一个或多个程序,而不是对输入的实际处理。为了方便重用,本专利技术提出由两个或两个以上的服务节点组成的具有特定功能的服务流片断,可以作 为一个新的服务节点。为了提高服务流的可重用性,本专利技术提出可以在参数值中引用变量。也就是,参数值中可以包含对可 以由脚本改变或赋值的运行时变量、与系统相关的环境变量、在运行时可以由用户赋值或改变的流变量的 引用。运行时变量, 一般发生在循环和反馈中。环境变量,主要是有关操作系统版本、服务提供者特征等 的变量,编撰可以移植的服务流时非常实用。流变量对于服务流供应商生产可定制的服务流非常有用。为进一步增强网络服务执行的自动化,本专利技术引入了控制节点。控制节点根据控制状态选择、循环、 反馈执行服务流片断,并且可以改变运行时变量从而改变服务流片断中某些节点的参数值,它可以接收服 务流片断作为参数。两个服务节点能够组合在一起,至少需要前一节点的某个输出口能够与后一节点的某个输入口相匹 配。为了能够确定服务节点能否连接在一起,以及验证服务节点的组合是否合法,本专利技术要求所有可以作 为输入的数据的类型必须带有元数据,或者本身就是元数据。鉴于此,本专利技术提供了一个实现上述系统的 数据类型方案。它要求输入包括元数据、表格、程序、模型四种类型;输出包括元数据、表格、程序、模 型、报告和展示。其中,表格类型可以是一行一列的表格,也可以在列中包含表格;表格、程序、模型类 型都带有指明其格式的元数据部分。此外,为了便于编写和解析服务流文档,进一步要求参数值的类型是 简单数据类型或者是可以持久化为字符串或XML片断的类型,包括服务流片断本身作为参数时的文档表 示片断或文档名字。析服务流,本专利技术提供了一个服务流文档化表示方案,即 一个服务流文档 包括(a) 流信息,包括流名字、描述;(b) 流变量,包括变量名、类型和值;(C) 一组节点实例,每个节点实例包括实例名、实例标识符、节点名、参数及值,以及在图形界面 上的显示位置等信息;(d) —组连接信息,每个连接信息包括出发节点实例的标识符、输出口名字、到达节点实例的标识 符、输入口名字。为了便于编撰、验证以及调度执行服务流,本专利技术还提出了服务提供者需要注册服务节点的描述信息, 或提供取得描述信息的接口,描述信息包括服务节点的名字、描述、图标、参数、输入口、输出口等信息。本专利技术还提出了用于实现本专利技术所述系统的服务提供者接口规范。服务提供者需要提供如下接口 (a) 建立服务连接的接口;(b) 取得描述信息的接口,返回这个服务提供者的特征信息,比如接收输入的方式、是否能够执行服务流片断、能否运行控制脚本,以及可供选择的输出方式等信息;(C)设定执行正文的接口,返回执行编号,执行正文包括需要执行的服务节点或服务流片断、获取 输入数据的方式、输出数据的方式、终结节点的输出口;(d) 设置输入就绪的接口,参数为输入口的名字;(e) 取消执行的接口,接收执行编f;为参数;(f) 接收服务执行状态变更通知的接口,每个通知都包含对应的执行编号。本专利技术还提出了,实现本专利技术所述系统可以采用的数据输入/输出方式(a) 所有服务提供者都支持直接通过服务连接进行输入/输出的方式,称为基本方式;(b) 预备输出时,向调用者返回一个提取码,以供调用者或下一个服务节点的提供者建立相应的连 接,并使用这个提取码来获取输出,称为提取输出方式,根据连接的协议类型可以进一步细分为HTTP提 取输出方式等,相应地,建立对应连接提取数据作为输入的方式称为提取输入方式;(C)以执行编号为传入码,调用者或者上一个服务节点的提供者建立相应的连接,并使用这个传入 码来输入数据,称为传入输入方式,根据连接的协议类型可以进一步细分为HTTP传入输入方式等,相应 地,建立对应连接进行数据输出的方式称为传入输出方式;(d) 输出数据保存在数据库中,向调用者返回一个数据库表/视图名或SQL脚本,以供调用者或下一 个服务节点的提供者通过数据库连接,并使用数据库表/视图名或SQL脚本来获取输出,称为数据库输出 方式,相应地,能够通过数据库连接使用数据库表/视图名或SQL脚本来获取输入的方式称为数据库输入 方式;(e) 和(d)方式类似的数据云输入/输出方式、Java Space输入/输出方式等;(f) 其他输入/输出方式。其中,(b)和(c)统称可重定向方式,(d)和(e)统称数据集结点方式。有了上述数据类型方案、服务流文档化表示方案、服务提供者规范以及数据输入/输出方式,我们可以5采用如下组件结构来实现本专利技术所述系统(a) 包含1个或多个服务供应子系统,向调用者提供服务,可以包含一个服务流片断执行引擎,以 便调用者将由同一个服务提供者提供的服务节点组成的服务流片断作为整体提交给服务提供者执行;(b) 包含1个或多个服务注册和査询子系统,维护节点名字及其对应的描述信息和准备方法;(C)包含1个或多个执行引擎,负责解析服务流文档、査找并调用服务节点、执行控制脚本、协调 数据输入/输出,最终完成服务流的执行;(d) 包含l个或多个工作空间,用于存放表格、程序、模型、报告、展示、服务流;(e) 包含1个或多个任务管理器,监视每个任务的执行进度以及启动、暂停和终止特定任务的执行;(f) 包含l个或多个用户界面,用于编辑服务流、管理工作空间、执行服务流、査看执行进度以及执 本文档来自技高网...

【技术保护点】
一种网络服务系统,其特征在于: (a)每一个服务节点包含控制服务执行的参数、需要此服务处理的数据输入和经此服务处理生成的输出,其中参数和输入不是必需的; (b)可以设置服务节点的输出方式,以便流向下一个服务节点,或流向一个数据集 结点,或者提供一个获取输出的机制给下一个服务节点,而不必每次返回给调用者; (c)一个或多个服务节点,可以按照需要连接在一起组成有唯一终结节点的有向图,称为服务流; (e)一个服务流的一次执行,称为一个任务,一个服务流可以被多次 执行。

【技术特征摘要】
1、一种网络服务系统,其特征在于(a)每一个服务节点包含控制服务执行的参数、需要此服务处理的数据输入和经此服务处理生成的输出,其中参数和输入不是必需的;(b)可以设置服务节点的输出方式,以便流向下一个服务节点,或流向一个数据集结点,或者提供一个获取输出的机制给下一个服务节点,而不必每次返回给调用者;(c)一个或多个服务节点,可以按照需要连接在一起组成有唯一终结节点的有向图,称为服务流;(e)一个服务流的一次执行,称为一个任务,一个服务流可以被多次执行。2、 如权利要求1所述的系统,其特征在于部分服务提供者包含一个服务流片断执行引擎,调用者可以将 由同一个服务提供者提供的服务节点组成的服务流片断作为整体提交给服务提供者执行。3、 如权利要求1所述的系统,其特征在于某些服务节点的输出可以是一个或多个程序,而不是对输入的 实际处理。4、 如权利要求1所述的系统,其特征在于由两个或两个以上的服务节点组成的具有特定功能的服务流片 断,可以作为一个新的服务节点。5、 如权利要求1所述的系统,其特征在于参数值中可以包含对可以由脚本改变或赋值的运行时变量、与 系统相关的环境变量或在运行时可以由用户赋值或改变的流变量的引用。6、 如权利要求5所述的系统,其特征在于服务流中可以包含能够接收服务流片断作为参数的称为控制节 点的特殊服务节点,根据控制状态选择、循环、反馈执行服务流片断,控制节点可以改变运行时变量从而 改变服务流中某些节点的参数值。7、 实现权利要求1到6所述的系统的方法,其特征在于采用如下数据类型方案(a) 参数值的类型是简单数据类型或者是可以持久化为字符串或XML片断的类型,包括服务流片断 本身作为参数时的文档表示片断或文档名字;(b) 输入包括元数据、表格、程序、模型四种类型;(c) 输出包括元数据、表格、程序、模型、报告和展示;(d) 表格类型可以是一行一列的表格,也可以在列中包含表格;(e) 程序类型,包括数据库表/视图名、SQL脚本、Java字节码等;(f) 表格、程序、模型类型都带有指明其格式的元数据部分。8、 在权利要求7的基础上,实现权利要求1到6所述的系统的方法,其特征在于服务流文档包括如下部 分(a) 流信息,包括流名字、描述;(b) 流变量,包括变量名、类型和值;(c) 一组节点实例,每个节点实例包括实例标识符、节点名、参数及值,以及在图形界面上的显示 位置、显示名等信息;(d) —组连接信息,每个连接信息包括出发节点实例的标识符、输出口名字、到达节点实例的标识 符、输入口名字;9、 实现权利要求1到6所述的系统的方法,其特征在于服务提供者需要注册服务节点的描述信息,或提 供取得描述信息的接口,描述信息包括服务节点的名字、描述、图标、参数、输入口、输出口等信息。10、 实现权利要求1到6所述的系统的方法,其特征在于服务提供者需要提供如下接口(a) 建立服务连接的接口;(b) 取得描述信息的接口,返回这个服务提供者的特征信息,比如接收输入的方式、是否能够执行服...

【专利技术属性】
技术研发人员:万德洪
申请(专利权)人:万德洪
类型:发明
国别省市:31[中国|上海]

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

1