《一种用于数据开放系统的服务自动化生成和部署方法.pdf》由会员分享,可在线阅读,更多相关《一种用于数据开放系统的服务自动化生成和部署方法.pdf(12页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104133717A43申请公布日20141105CN104133717A21申请号201410422564422申请日20140826G06F9/445200601G06F17/3020060171申请人中电海康集团有限公司地址310012浙江省杭州市马塍路36号72发明人陈琼林友勇戈洋洋孙丽娟74专利代理机构杭州之江专利事务所普通合伙33216代理人张慧英54发明名称一种用于数据开放系统的服务自动化生成和部署方法57摘要本发明涉及WEB数据服务技术领域,尤其涉及一种用于数据开放系统的服务自动化生成和部署方法,该方法使用一种自定义的服务描述文件,由管理节点根据服务描述文件,。
2、自动化生成不同格式的数据服务源代码文件和二进制文件,并自动将服务部署到业务节点中;如部署成功,则通知门户节点,门户节点根据数据服务描述文件自动生成数据服务的说明页面并部署和展示。服务部署成功后,业务节点接收客户端的服务请求,执行前述自动生成的服务代码,返回结果。采用本发明,能够有效降低数据服务的开发和部署时间,从而高效地开放数据;增加系统功能的可扩展性,并消除数据服务的操作、数据服务的数据源和数据服务的格式间的耦合,可以分别独立升级和演化。51INTCL权利要求书2页说明书5页附图4页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书5页附图4页10申请公布号CN104133。
3、717ACN104133717A1/2页21一种用于数据开放系统的服务自动化生成和部署方法,其特征在于,包括如下步骤1创建数据开放系统,包括管理节点、业务节点及门户节点;编写服务描述文件并上传发布;2管理节点解析服务描述文件,生成多种格式的数据服务源代码文件;3管理节点根据数据服务源代码文件编译生成数据服务二进制文件,将数据服务二进制文件打包传输给业务节点;4业务节点接收数据服务二进制文件并将数据服务二进制文件部署到运行环境,将部署结果反馈给管理节点;5管理节点接收部署结果信息后,发送通知给门户节点;6门户节点解析服务描述文件,生成并部署数据服务说明页面;7部署成功后客户端发起服务请求,执行后。
4、返回结果。2根据权利要求1所述的一种用于数据开放系统的服务自动化生成和部署方法,其特征在于,所述数据开放系统中,管理节点和业务节点以树形连接;管理节点为该树形的根节点,其下连接一个或多个数据业务节点;所述的门户节点为独立节点,连接管理节点。3根据权利要求1所述的一种用于数据开放系统的服务自动化生成和部署方法,其特征在于,所述的服务描述文件包括服务名称的唯一标识、对服务操作的描述、对服务数据源的引入及对服务格式的定义。4根据权利要求3所述的一种用于数据开放系统的服务自动化生成和部署方法,其特征在于,所述的对服务操作的描述包括服务内操作名称的唯一标识、操作的输入参数描述、操作的输出参数描述及操作方。
5、法描述。5根据权利要求3所述的一种用于数据开放系统的服务自动化生成和部署方法,其特征在于,所述的对服务数据源的引入包括A通过SQL引入的关系式数据库数据源;B通过BPEL引入的外部数据服务数据源;C通过可定制的分隔符引入的格式化文件数据源;D可扩展的接口可包括其形式的数据源。6根据权利要求3所述的一种用于数据开放系统的服务自动化生成和部署方法,其特征在于,所述的对服务格式的定义包括A定义为XML格式的SOAP服务;B定义为XML格式的REST服务;C定义为JSON格式的REST服务;D预留可扩展的接口可包括其格式的服务。7根据权利要求1所述的一种用于数据开放系统的服务自动化生成和部署方法,其特。
6、征在于,所述的步骤4业务节点将接收到的数据服务二进制文件部署到运行环境,包括以下步骤1各个业务节点收到打包后的数据服务二进制文件后,在现备份目录A中展开,并交换备份和执行目录路径配置,即将执行目录路径配置为现备份目录A,备份目录路径配置为现执行目录B;权利要求书CN104133717A2/2页32业务节点重启运行环境,执行目录转换至原备份目录A,备份目录转换至原执行目录B;3若服务部署成功,业务节点通知管理节点;4若服务部署失败,则重置备份和执行目录路径配置,即将执行目录路径重置为目录B,备份目录路径重置为目录A,重启运行环境,系统回滚,并通知管理节点。8根据权利要求1至6任一权利要求所述的一。
7、种用于数据开放系统的服务自动化生成和部署方法,其特征在于,所述的步骤7部署成功后客户端发起服务请求,执行后返回结果,包括以下步骤1客户端发起数据服务请求,包括服务的输入参数,和服务的操作方法,其格式为定义的任何一种服务格式;2业务节点收到上述请求,调用可配置的前过滤器;3业务节点访问所引入的服务数据源;4业务节点调用可配置的后过滤器5业务节点返回数据服务请求,包括服务的输出参数。权利要求书CN104133717A1/5页4一种用于数据开放系统的服务自动化生成和部署方法技术领域0001本发明涉及WEB数据服务技术领域,尤其涉及一种用于数据开放系统的服务自动化生成和部署方法。背景技术0002在当前。
8、数据爆炸的时代,把组织拥有的数据作为服务开放给社会,是充分挖掘大数据价值的必然手段。在开发和部署数据服务过程中,通常使用的步骤是开发人员要根据不同的服务类型,例如XML格式的SOAP服务或XML格式的REST服务或JSON格式的REST服务等,编写不同的服务代码程序;还需要根据服务的数据源不同,例如关系式数据库,格式化文件或外部数据服务等,编写不同的数据源访问程序;然后编译源代码为二级制文件,并打包部署到数据服务器集群上;同时,门户网站还需要增加服务的说明页面并部署,不同的数据服务格式有不同的说明页面。以上这些过程都是人工进行,费时费力且有大量重复工作,容易出错,无法满足适应大数据时代快速生成。
9、和部署数据服务,从而高效开放数据的要求;而且由于数据服务操作与数据服务格式、数据源耦合紧密,每次加入新的数据服务格式,或者新类型的数据源都需要全部重新编写代码,无法做到各自独立升级和演化。为此设计一种服务自动化生成和部署方法是非常有必要的。发明内容0003本发明为克服上述的不足之处,目的在于提供一种用于数据开放系统的服务自动化生成和部署方法,该方法能够有效降低数据服务的开发和部署时间,增加系统功能的可扩展性,并消除数据服务的操作、数据服务的数据源和数据服务的格式间的耦合,可以分别独立升级和演化。0004本发明是通过以下技术方案达到上述目的一种用于数据开放系统的服务自动化生成和部署方法,包括如下。
10、步骤00051创建数据开放系统,包括管理节点、业务节点及门户节点;编写服务描述文件并上传发布;00062管理节点解析服务描述文件,生成多种格式的数据服务源代码文件;00073管理节点根据数据服务源代码文件编译生成数据服务二进制文件,将数据服务二进制文件打包传输给业务节点;4业务节点接收数据服务二进制文件并将数据服务二进制文件部署到运行环境,将部署结果反馈给管理节点;00085管理节点接收部署结果信息后,发送通知给门户节点;00096门户节点解析服务描述文件,生成并部署数据服务说明页面;00107部署成功后客户端发起服务请求,执行后返回结果。0011作为优选,所述数据开放系统中,管理节点和业务节。
11、点以树形连接;管理节点为该树形的根节点,其下连接一个或多个数据业务节点;所述的门户节点为独立节点,连接管理节点。说明书CN104133717A2/5页50012作为优选,所述的服务描述文件包括服务名称的唯一标识、对服务操作的描述、对服务数据源的引入及对服务格式的定义。0013作为优选,所述的对服务操作的描述包括服务内操作名称的唯一标识、操作的输入参数描述、操作的输出参数描述及操作方法描述。0014作为优选,所述的对服务数据源的引入包括0015A通过SQL引入的关系式数据库数据源;0016B通过BPEL引入的外部数据服务数据源;0017C通过可定制的分隔符引入的格式化文件数据源;0018D可扩展。
12、的接口可包括其形式的数据源。0019作为优选,所述的对服务格式的定义包括0020A定义为XML格式的SOAP服务;0021B定义为XML格式的REST服务;0022C定义为JSON格式的REST服务;0023D预留可扩展的接口可包括其格式的服务。0024作为优选,所述的步骤4业务节点将接收到的数据服务二进制文件部署到运行环境,包括以下步骤00251各个业务节点收到打包后的数据服务二进制文件后,在现备份目录A中展开,并交换备份和执行目录路径配置,即将执行目录路径配置为现备份目录A,备份目录路径配置为现执行目录B;00262业务节点重启运行环境,执行目录转换至原备份目录A,备份目录转换至原执行目录。
13、B;00273若服务部署成功,业务节点通知管理节点;00284若服务部署失败,则重置备份和执行目录路径配置,即将执行目录路径重置为目录B,备份目录路径重置为目录A,重启运行环境,系统回滚,并通知管理节点。0029作为优选,所述的步骤7部署成功后客户端发起服务请求,执行后返回结果,包括以下步骤00301客户端发起数据服务请求,包括服务的输入参数,和服务的操作方法,其格式为定义的任何一种服务格式;00312业务节点收到上述请求,调用可配置的前过滤器;00323业务节点访问所引入的服务数据源;00334业务节点调用可配置的后过滤器00345业务节点返回数据服务请求,包括服务的输出参数。0035本发明。
14、的有益效果在于00361本发明使得数据服务的生成和部署完全自动化,数据服务的说明页面也自动化生成和部署,大大提高了服务生成和部署的效率,有利于快速生成和部署新数据服务,从而高效地开放数据。00372本发明支持多种服务格式,支持访问多种服务数据源,所有服务代码均自动生成。00383本发明引入服务描述文件,将服务的数据源,服务的操作和服务的格式分别定说明书CN104133717A3/5页6义,互相独立,可分别演化和升级。除现有实现外,服务描述文件和服务系统有扩展接口,可引入新类型的数据源和新的服务格式,具有良好的支持扩展能力。00394本发明的系统内置可配置过滤器,可引入扩展代码,包括默认的用户的。
15、验证和鉴权过滤器,服务的流量统计和控制过滤器等,具有很好的功能扩展性。附图说明0040图1为本发明实施例中数据开放系统的结构示意图;0041图2为本发明实施例中服务描述文件的结构示意图;0042图3为本发明的用于数据开放系统的服务自动化生成和部署方法的步骤流程图;0043图4为本发明实施例中业务节点部署的流程图;0044图5为本发明实施例中业务节点数据服务的流程图。具体实施方式0045下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此0046实施例1本发明方法用于数据开放系统,数据开放系统如图1所示,由管理节点、业务节点以及门户节点组成,其中0047管理节点,用于根据服务。
16、描述文件,自动化生成多种格式的数据服务文件,并将之自动化部署到业务节点。0048门户节点,用于根据服务描述文件,自动生成和部署数据服务的说明页面,便于用户查看。0049业务节点,用于将数据服务文件部署到本地的运行环境中。接受客户端的服务请求,访问数据源,并返回结果。若业务节点为集群时,需前置一个路由节点作请求分发,该路由节点可采用常见的路由方案。0050上述的管理节点和业务节点以树形连接,管理节点为该树形的根节点,其下连接一个或多个数据业务节点。而门户节点为独立节点,连接管理节点。0051如图3所示,一种用于数据开放系统的服务自动化生成和部署方法,包括如下步骤00521创建数据开放系统,包括管。
17、理节点、业务节点及门户节点;编写服务描述文件并上传发布;为使用本方法,需要为在数据开放系统中创建一个数据服务,管理员需要进行的步骤如下0053步骤1编写服务描述文件。服务描述文件是对所需生成和部署服务的一种描述,是一种XML格式的文件,参见图2,服务描述文件包括服务名称的唯一标识,对服务操作的描述,对服务数据源的引入,对服务格式的定义。0054服务描述文件定义了作为该服务唯一标识的服务名称,其下可以定义多个服务操作。0055服务操作的描述,包括服务内操作的唯一标识别,操作的输入参数的描述,操作的输出参数的描述,操作方法的描述。0056服务数据源的引入,包括通过SQL语言引入的关系式数据库数据源。
18、,通过BPEL语说明书CN104133717A4/5页7言引入的外部数据服务数据源,通过可定制的分隔符引入的格式化文件数据源,以及预留可扩展的接口可包括其形式的数据源。数据源可为关系式数据库,可为格式化文件,也可为外部数据服务,并保留了其它扩展方式。0057服务格式有多种定义包括定义为XML格式的SOAP服务,定义为XML格式的REST服务,定义为JSON格式的REST服务,以及预留可扩展的接口可包括其格式的服务。管理员可选择同时发布其中一种或多种格式的数据服务。0058服务描述文件实现对数据服务的操作,数据服务的数据源,和数据服务的格式互相独立,分别演化。例如,如加入对新的数据服务格式的支持。
19、,不会影响对现有数据源或者数据操作的支持。0059步骤2通过管理界面将该服务描述文件上传,在系统中注册并发布该服务。00602管理节点解析服务描述文件,生成多种格式的数据服务源代码文件,该数据服务源代码文件包括了针对不同服务格式的服务操作函数,和针对不同服务数据源访问的函数;00613管理节点根据数据服务源代码文件编译生成数据服务二进制文件,将数据服务二进制文件打包传输给业务节点;其中,数据服务二进制文件内容包括了针对不同服务格式的服务操作函数,和针对不同服务数据源访问的函数。00624业务节点接收数据服务二进制文件并将数据服务二进制文件部署到运行环境,将部署结果反馈给管理节点;00635管理。
20、节点接收部署结果信息后,发送通知给门户节点;00646门户节点解析服务描述文件,生成并部署数据服务说明页面;00657部署成功后客户端发起服务请求,执行后返回结果。在这些步骤完成后,客户可根据门户节点的数据服务说明页面,编写客户端程序,发起数据服务请求,业务节点运行所部署的服务代码响应客户端发起的数据服务请求。0066业务节点将数据服务二进制文件部署到运行环境,参见图4,包括如下步骤0067步骤401业务节点收到打包后的数据服务二进制文件;0068步骤402在现备份目录A中展开;0069步骤403交换备份和执行目录路径,即将执行目录路径配置为现备份目录A,备份目录路径配置为现执行目录B;007。
21、0步骤404重启运行环境,则执行目录转换至原备份目录A,备份目录转换至原执行目录B;0071步骤405如服务部署成功,到步骤408,如服务部署失败,到步骤406;0072步骤406重置备份和执行目录,即将执行目录路径重置为目录B,备份目录路径重置为目录A;0073步骤407重启运行环境,执行目录为目录B,备份目录为目录A,系统回滚;0074步骤408通知管理节点。0075在数据服务成功部署后,客户可查看门户节点中的数据服务说明页面,编写客户端程序。客户端程序发起数据服务请求,参见图5,步骤如下0076步骤501客户端发起数据服务请求,包括服务的输入参数,和服务的操作方法,其格式可为上述定义的任。
22、何一种服务格式;说明书CN104133717A5/5页80077步骤502业务节点收到上述请求,调用可配置的前过滤器,默认的过滤器配置实现包括用户的鉴权和验证;0078步骤503业务节点访问数据源,访问数据源的方法函数为前述自动生成代码;0079步骤504数据源返回结果给业务节点;0080步骤505业务节点调用可配置的后过滤器,默认的过滤器配置实现包括流量控制和统计;0081步骤506业务节点返回数据服务请求,包括服务的输出参数,返回的服务格式为用户请求的服务格式。0082上述的调用可配置的过滤器,在过滤器中可部署扩展代码,默认部署的扩展代码包括用户的验证和鉴权过滤器,服务的流量统计和控制过滤。
23、器等。0083上述的业务节点处理客户端请求的数据服务代码均为述自动生成。0084从上述实施例可知,通过使用本发明的方法和系统,使得数据服务的生成和部署完全自动化,数据服务的说明页面也自动化生成和部署。而以现有方式,需要编写服务代码,编译代码为二进制文件,再部署到服务器或集群,并编写和部署服务的说明页面,过程都由人工进行,繁琐重复,容易出错。本发明大大提高了服务生成和部署的效率,有利于快速生成和部署新数据服务,高效地开发数据。进一步的,本发明将服务的数据源,服务的操作和服务的格式分别定义,互相独立,可分别演化。除现有实现外,服务描述文件和服务系统有扩展接口,可引入新类型的数据源和新的服务格式,具有良好的支持扩展能力。并且,本发明的系统内置可配置过滤器,可引入扩展代码,包括默认的用户的验证和鉴权过滤器,服务的流量统计和控制过滤器等,具有很好的功能扩展性。0085以上的所述乃是本发明的具体实施例及所运用的技术原理,若依本发明的构想所作的改变,其所产生的功能作用仍未超出说明书及附图所涵盖的精神时,仍应属本发明的保护范围。说明书CN104133717A1/4页9图1图2说明书附图CN104133717A2/4页10图3说明书附图CN104133717A103/4页11图4说明书附图CN104133717A114/4页12图5说明书附图CN104133717A12。