一种平台系统的插件管理方法和平台系统技术方案

技术编号:12101107 阅读:69 留言:0更新日期:2015-09-23 19:12
本发明专利技术公开了一种平台系统的插件管理方法和平台系统。本发明专利技术是利用插件存储服务器对平台系统中所有的实例服务器所使用的插件进行统一存储,并利用插件管理数据库对所有插件的信息进行保存,各个实例服务器通过对插件管理数据库的访问即可或者自己是否需要安装、更新或是删除相应的插件。本发明专利技术不但可以方便开发人员对系统插件的新增、更新和删除操作,还可以通过对插件管理数据库中所存储数据的查看,而清晰地知晓插件任务的执行。另外,因为插件管理数据库存储有插件的相应数据,当某个实例出现异常没有执行某个或者某些插件操作任务时,可以通过对插件管理数据库记录的查询快速地定位异常实例,方便问题的排查、解决。

【技术实现步骤摘要】

本专利技术涉及计算机、互联网领域,特别涉及一种计算机、互联网中的应用系统的平台系统的插件管理方法和平台系统
技术介绍
目前,随着计算机和网络的蓬勃发展,应用系统的功能不断扩大,应用系统的代码量也在不断增加,随之而来的是系统的可维护性不断降低。因此,开发人员在对系统进行功能增加、修改等操作时,如果不对系统的代码足够了解,很难快速的完成对系统功能的修改。为了解决这一问题,目前的主流是搭建平台系统,以提供基础的底层服务。在此基础上,在功能扩充方面引入插件机制,进而开发人员对系统进行功能扩充时,就不必对平台系统进行修改,而是按照插件规范开发插件,上传到平台系统即可以完成对系统功能的扩充。图1所示为现有的平台系统提供的插件管理方式。参见图1所示,现有的平台系统的插件安装具体过程是,开发人员将插件包上传到平台系统,平台系统将插件包存储在平台系统的本地服务器硬盘中,之后,平台系统拆包插件包、加载解析插件文件、校验插件、装载插件,并将插件的注册信息(如插件包名称、插件标识以及插件包存放地址等)存入数据库中,之后平台系统即可对外提供插件的功能。参见图1所示,现有的平台系统的插件更新具体过程是,开发人员将新的插件包上传到平台系统,平台系统将新的插件包存储在平台系统的本地服务器硬盘中,之后,平台系统拆包插件包、加载解析插件文件、校验插件,之后平台系统在数据库中查询插件的注册信息,如果没有注册信息,则新增该系的插件包的注册信息,如果有注册信息,则对注册信息进行更新,之后卸载原有插件并装载新的插件,随后平台系统即可对外提供新的插件的功能。参见图1所示,现有的平台系统的插件更新具体过程是,开发人员将新的插件包上传到平台系统,平台系统将新的插件包存储在平台系统的本地服务器硬盘中,之后,平台系统拆包插件包、加载解析插件文件、校验插件,之后平台系统在数据库中查询插件的注册信息,如果没有注册信息,则新增该系的插件包的注册信息,如果有注册信息,则对注册信息进行更新,之后卸载原有插件并装载新的插件,随后平台系统即可对外提供新的插件的功能。参见图1所示,现有的平台系统的插件删除过程是,开发人员将向平台系统发出删除插件指令,平台系统向数据库查询所要删除的插件的注册信息,如果有,则删除插件的注册信息,之后平台系统实例卸载插件,如果没有注册信息,则表明平台系统中没有所要删除的插件。随着平台系统功能的不断增加,集群服务器的使用越来越多。而对于集群服务器的平台系统来说,现有技术方案每次增加、修改、删除都需要针对于集群中的每台服务器上的系统实例进行单独操作。这样,既费时、又费力。并且,极易漏掉对个别服务器的实例的相关插件操作,进而导致,没有及时进行插件操作的服务器中的实例不能执行插件的功能,同时,开发人员在寻找这种问题时,也很费时、费力。
技术实现思路
有鉴于此,本专利技术提供一种平台系统的插件管理方法和平台系统,以实现平台系统对插件的统一管理,降低人工管理成本,并消除人工管理时易于发生的错误。本专利技术的技术方案是这样实现的:一种平台系统的插件管理方法,所述平台系统具有多个实例服务器,所述方法包括:将插件管理数据信息发送给所述多个实例服务器中的关键实例服务器;关键实例服务器根据所接收的插件管理数据信息的内容执行本关键实例服务器的插件操作,并对插件管理数据库的数据进行更新,并根据所述插件管理数据信息的内容酌情与插件存储服务器进行数据交互;所述多个实例服务器中除关键实例服务器以外的其它实例服务器根据所述插件管理数据库中的数据变化,执行本实例服务器的插件操作,并酌情与插件存储服务器进行数据交互。进一步,所述插件管理数据信息包括:插件数据包、插件删除指令信息。进一步,当所述插件管理数据信息为所述插件数据包时:关键实例服务器根据所接收的插件管理数据信息的内容执行本关键实例服务器的插件操作,并对插件管理数据库的数据进行更新,并根据所述插件管理数据信息的内容酌情与插件存储服务器进行数据交互,包括:所述关键实例服务器将接收到的插件数据包上传给所述插件存储服务器进行保存;上传给所述插件存储服务器后,所述关键实例服务器将本地保存的所述插件数据包拆包为插件文件,并对所述插件文件进行加载和解析;所述关键实例服务器在所述插件管理数据库中查询是否存在所述插件的存储记录;若所述插件管理数据库中没有所述插件的存储记录,则所述关键实例服务器对所述插件进行装载,之后,向所述插件管理数据库中添加所述插件的存储记录,并向所述插件管理数据库中添加所述插件的新增任务记录;若所述插件管理数据库中存在所述插件的存储记录,则所述关键实例服务器对所述插件的旧版插件进行卸载,并对所述插件进行装载,之后,向所述插件管理数据库中更新所述插件的存储记录,并向所述插件管理数据库中添加所述插件的更新任务记录;所述多个实例服务器中除关键实例服务器以外的其它实例服务器根据所述插件管理数据库中的数据变化,执行本实例服务器的插件操作,并酌情与插件存储服务器进行数据交互,包括:所述其它实例服务器对所述插件管理数据库进行扫描;当发现所述插件管理数据库中所述插件的新增任务记录后,所述其它实例服务器通过所述插件管理数据库中的所述插件的存储记录获取所述插件在所述插件存储服务器中的存储地址,进而从所述插件存储服务器下载所述插件的插件数据包,并将其拆包为插件文件,并对所述插件文件进行加载、解析和装载;当发现所述插件管理数据库中所述插件的更新任务记录后,所述其它实例服务器对所述插件的旧版插件进行卸载,之后所述其它实例服务器通过所述插件管理数据库中的所述插件的存储记录获取所述插件在所述插件存储服务器中的存储地址,进而从所述插件存储服务器下载所述插件的插件数据包,并将其拆包为插件文件,并对所述插件文件进行加载、解析和装载。进一步,所述关键实例服务器将本地保存的所述插件数据包拆包为插件文件后,还包括:所述关键实例服务器对所述插件文件的内容进行规范校验,以校验所述插件是否符合所述平台系统的插件规范,当所述插件的校验结果不符合所述平台系统的插件规范时,进行相应的错误提示。进一步,当所述插件管理数据信息为所述插件删除指令信息时:关键实例服务器根据所接收的插件管理数据信息的内容执行本关键实例服务器的插件操作,并对插件管理数据库的数据进行更新,并根据所述插件管理数据信息的内容酌情与插件存储服务器进行数据交互,包括:所述关键实例服务器根据所述插件删除指令信息,对其本地的所述插件执行卸载和删除操作,并向所述插件管理数据库中添加所述插件的删除任务记录,不与所述插件存储服务器进行数据交互;所述多个实例服务器中除关键实例服务器以外的其它实例服务器根据所述插件管理数据库中的数据变化,执行本实例服务器的插件操作,并酌情与插件存储服务器进行数据交互,包括:所述其它实例服务器对所述插件管理数据库进行扫描;当发现所述插件管理数据库中所述插件的删除任务记录后,所述其它实例服务器对其各自本地的所述插件执行卸载和删除操作,不与所述插件存储服务器进行数据交互。进一步,所述插件管理数据库中存储有插件记录表和插件操作任务记录表;其中,所述插件记录表中记录有安装于所述平台系统的各个插件的记录,其中包括各个插件的插件标识、插件包名称、以及插件包在所述插件存储服务器中的存储地址本文档来自技高网
...
一种平台系统的插件管理方法和平台系统

【技术保护点】
一种平台系统的插件管理方法,所述平台系统具有多个实例服务器,所述方法包括:将插件管理数据信息发送给所述多个实例服务器中的关键实例服务器;关键实例服务器根据所接收的插件管理数据信息的内容执行本关键实例服务器的插件操作,并对插件管理数据库的数据进行更新,并根据所述插件管理数据信息的内容酌情与插件存储服务器进行数据交互;所述多个实例服务器中除关键实例服务器以外的其它实例服务器根据所述插件管理数据库中的数据变化,执行本实例服务器的插件操作,并酌情与插件存储服务器进行数据交互。

【技术特征摘要】

【专利技术属性】
技术研发人员:韩松
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京;11

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

1