开放平台模块化的方法和装置制造方法及图纸

技术编号:10308512 阅读:124 留言:0更新日期:2014-08-13 12:42
本发明专利技术提供了开放平台模块化的方法和装置,包括,基于多模块进行请求路由和资源隔离管理;通过请求对应的方法名称和版本号码来统一管理模块资源,同时进行多版本运行和管理。基于节点模式进行模块版本部署,同一版本模块可运行在不同的节点。本发明专利技术实现模块服务高性能、高可用,动态部署更加简单,运行可控,模块开发降低耦合。

【技术实现步骤摘要】
开放平台模块化的方法和装置
本专利技术涉及程序开发领域,特别涉及一种开放平台模块化的方法和装置。
技术介绍
开放平台模块化依托OGSI (Open Service Gateway Initiative)技术实现模块生命周期管理和服务注册。通过节点控制实现模块热部署和热控制,多模块版本可共存提供服务。降低了开放平台API开发的耦合度,模块通过版本控制,实现部署、启动、停止、卸载,使模块的运行能通过服务平台进行管理监控,对整个开放平台的稳定运行提供全套的治理功能。同时实现模块的多版本仓库管理,所有模块在仓库中都存储物理文件,对于不同版本的比较和回滚提供了有效保障。然而,由于模块API的业务复杂性,多模块之间存在相互依赖的问题,不仅包括开放平台模块化存在的类编译依赖,对于复杂的模块,还存在双向依赖和循环依赖的问题。针对相关技术中所存在的上述问题,目前尚未提出有效的解决方案。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术提出了一种开放平台模块化的方法和装置,实现模块动态部署和动态卸载,提供模块仓库管理和版本控制,实现服务热更新,降低开发耦合度。本专利技术采用如下技术方案:一种开放平台模块化方法,包括:控制台基于节点模式对模块进行部署和安装,供网站端读取;当启动模块时,通过控制台将当前模块注册到模块资源管理器中;利用模块仓库实现模块的多版本存储,同一版本模块可运行在不同的节点。优选地,该方法还包括:当停止模块时,将模块资源从开放平台的模块资源管理器中移除。优选地,所述部署和安装步骤进一步包括模块上传、模块解析和模块元数据存储,其中,模块资源管理器与开放平台网站端数据通过数据库进行统一展现和管理,上传到指定的节点上并且加载和实例化相应的jar文件,解析该jar文件的API描述元数据到数据库中,网站通过读取数据库的API来显示相应的API文档。优选地,该方法还包括:当卸载模块时,将模块从开放平台的模块资源管理器移除,并从模块资源管理器中移除对应的模块资源。优选地,所述启动模块的步骤进一步包括:响应于用户请求,控制台将指定的模块示例加载到当前模块资源管理器中,并在启动时更新API状态,通过读取数据库,网站显示API文档,其中,将模块的入库类ServiceMethodBean注解作为统一模块的入口类,将其已安装的资源和classLoader切换到当前的类加载器中,并且注册到模块资源管理器中,用于加载将要启动的模块的资源,通过代理找到启动的模块。优选地,在资源定位过程中,使用调用的方法名称与版本号的组合来确定唯一的接口服务。优选地,所述停止模块的步骤进一步包括:响应于用户请求,控制台从当前资源管理器中将指定的模块实例移除,并在实时更新API状态,通过读取数据库,网站显示API文档,将模块的资源从开放平台的模块资源管理器中移除,开放平台就忽略所有停止的模块,进入的请求将无法处理,开放平台前端网站对应的API文档以及描述均被标记为暂停使用。优选地,所述卸载模块的步骤进一步包括:控制台从模块资源管理器中移除对应的模块资源,同时该模块的实体jar文件也将移除,开放平台前端网站对应的API文档,处于历史版本,同时网站不显示该API相关描述。优选地,在所述模块多版本存储中,采用maven的存储目录结构,模块仓库在控制台上进行统一管理,所有的模块部署到必须上传到模块仓库上,统一分发和部署到对应的节点。根据本专利技术的另一方面,提供了一种开放平台模块化装置,包括:安装单元,用于基于节点模式对模块进行部署和安装,供网站端读取;启动单元,用于将当前模块注册到模块资源管理器中以启动该模块;模块仓库单元,用于实现模块的多版本存储,其中同一版本模块可运行在不同的节点;停止单元,用于将模块资源从开放平台的模块资源管理器中移除,以停止该模块;卸载单元,用于将模块从开放平台的模块资源管理器移除,并从模块资源管理器中移除对应的模块资源;其中,所述装置使用要调用的方法名称与版本号的组合来确定唯一的资源。相比于现有技术,本专利技术的技术方案的具有以下优点:模块在平台中的动态部署更加简单,运行可控,模块开发降低耦合,模块更新实现热部署控制,多模块版本共存,通过仓库和版本控制,将模块升级风险降低到最小化,并且不同历史版本的模块可相互比较,模块接口访问实现动态可控,可针对模块进行方法级控制启动停止。【附图说明】图1是根据本专利技术实施例的开放平台模块化方法的流程图。图2是根据本专利技术实施例的模块安装过程的流程图。图3是根据本专利技术实施例的模块启动过程的流程图。图4是根据本专利技术实施例的模块停止过程的流程图。图5是根据本专利技术实施例的模块卸载过程的流程图。图6是根据本专利技术实施例的模块多版本共存示意图。图7是根据本专利技术实施例的模块多版本管理的流程图。图8是根据本专利技术实施例的类加载机制的流程图。图9是根据本专利技术实施例的模块类的查找流程图。图10是根据本专利技术实施例的模块生命周期示意图。【具体实施方式】多种方式可以用于(包括实施为过程;装置;系统;物质组成;在计算机可读存储介质上包括的计算机程序产品;和/或处理器(诸如如下处理器,该处理器被配置成执行在耦合到处理器的存储器上存储的和/或由该存储器提供的指令))实施本专利技术。在本说明书中,这些实施或者本专利技术可以采用的任何其他形式可以称为技术。一般而言,可以在本专利技术的范围内变更公开的过程的步骤顺序。除非另有明示,描述为被配置成执行任务的部件(诸如处理器或者存储器)可以实施为被临时配置成在给定时间执行该任务的一般部件或者被制造成执行该任务的具体部件。下文与图示本专利技术原理的附图一起提供对本专利技术一个或者多个实施例的详细描述。结合这样的实施例描述本专利技术,但是本专利技术不限于任何实施例。本专利技术的范围仅由权利要求书限定,并且本专利技术涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本专利技术的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本专利技术。图1是根据本专利技术实施例的开放平台模块化方法的流程图。本专利技术提供的方法包括:1、控制台对模块进行部署和安装,供网站端读取。模块部署和安装,通过控制台的部署安装模块,包括模块上传、模块解析和模块元数据存储。并且和开放平台网站端数据统一展现和管理。图2是根据本专利技术实施例的模块安装过程的流程图。如图2所示,响应于用户的请求,governor对指定节点进行部署,将API发布至数据库中。网站通过读取数据库的API来显示相应的API文档。根据本专利技术进一步优选的实施例,部署模块通过Governor来上传到指定的Node上并且加载和实例化该jar,以及解析该jar文件的API描述元数据到数据库中,此时标记为已安装,网站不显示。2、当启动模块时,将当前模块注册到模块资源管理器中。图3是根据本专利技术实施例的模块启动过程的流程图。如图3所示,响应于用户请求,Governor将指定的模块示例加载到当前模块资源管理器中,并在启动时更新API状态。通过读取数据库,网站显示API文档。在本专利技术优选的实施例中,将模块的入库类ServiceMethodBean注解作为统一模块的入口类,将其已安装的资源和classLoader切换到当前的类加载器中,并且注册到模块资源管理器中用本文档来自技高网...
开放平台模块化的方法和装置

【技术保护点】
一种开放平台模块化方法,其特征在于,包括:控制台基于节点模式对模块进行部署和安装,供网站端读取;当启动模块时,通过控制台将当前模块注册到模块资源管理器中;利用模块仓库实现模块的多版本存储,同一版本模块可运行在不同的节点。

【技术特征摘要】
1.一种开放平台模块化方法,其特征在于,包括: 控制台基于节点模式对模块进行部署和安装,供网站端读取; 当启动模块时,通过控制台将当前模块注册到模块资源管理器中; 利用模块仓库实现模块的多版本存储,同一版本模块可运行在不同的节点。2.根据权利要求1所述的方法,其特征在于,该方法还包括: 当停止模块时,将模块资源从开放平台的模块资源管理器中移除。3.根据权利要求1所述的方法,其特征在于,所述部署和安装步骤进一步包括模块上传、模块解析和模块元数据存储, 其中,模块资源管理器与开放平台网站端数据通过数据库进行统一展现和管理,上传到指定的节点上并且加载和实例化相应的jar文件,解析该jar文件的API描述元数据到数据库中,网站通过读取数据库的API来显示相应的API文档。4.根据权利要求1所述的方法,其特征在于,该方法还包括: 当卸载模块时,将模块从开放平台的模块资源管理器移除,并从模块资源管理器中移除对应的模块资源。5.根据权利要求1所述的方法,其特征在于,所述启动模块的步骤进一步包括: 响应于用户请求,控制台将指定的模块示例加载到当前模块资源管理器中,并在启动时更新API状态,通过读取数据库,网站显示API文档, 其中,将模块的入库类ServiceMethodBean注解作为统一模块的入口类,将其已安装的资源和classLoader切换到当前的类加载器中,并且注册到模块资源管理器中,用于加载将要启动的模块的资源,通过代理找到启动的模块。6.根据权利要求5所述的方法,其特征在于,在资源定位过程中,...

【专利技术属性】
技术研发人员:邓建利谢志胜贾玉光刘红斌
申请(专利权)人:世纪禾光科技发展北京有限公司
类型:发明
国别省市:北京;11

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

1