CN112527381B - 多平台软件版本管理及更新系统 - Google Patents
多平台软件版本管理及更新系统 Download PDFInfo
- Publication number
- CN112527381B CN112527381B CN202011418744.7A CN202011418744A CN112527381B CN 112527381 B CN112527381 B CN 112527381B CN 202011418744 A CN202011418744 A CN 202011418744A CN 112527381 B CN112527381 B CN 112527381B
- Authority
- CN
- China
- Prior art keywords
- version
- updating
- module
- software
- update
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种多平台软件版本管理及更新系统,所述系统包括云平台服务模块、Windows更新模块、Linux更新模块。所述云平台服务模块根据客户端Windows更新模块或Linux更新模块提交的更新指令查询版本管理数据库,将有关的更新文件压缩打包传输到客户端模块。所述Windows更新模块查询云平台上软件的版本发布信息,指定要更新或回滚的版本号并发送更新指令到云平台服务模块,从云平台服务器下载更新文件的压缩包,并在本地解压完成软件的更新,同时保存本次更新记录。所述Linux更新模块连接云平台服务模块或Windows更新模块下载更新文件的压缩包,完成本地更新并保存更新记录。所述系统极大提高了软件更新管理和客户软件版本维护的方便性和高效性,节约人力和物力等资源成本。
Description
技术领域
本发明涉及电力系统自动化技术领域,具体涉及一种多平台软件版本管理及更新系统。
背景技术
在电力系统自动化的发展过程中,各种应用软件层出不全,运行的平台也呈多样化,有Windows平台,也有Linux嵌入式平台等。随着行业领域的发展,用户的需求也随之发生变化,因此厂家相应地根据用户的需求对桌面应用软件及装置内置软件的增加或修改也就越来越频繁。为了满足用户的使用要求,大量的软件需要及时地更新维护,尤其是装置内置软件的更新维护还需要工作人员到现场手动更新,浪费了大量人力、物力和时间成本,也影响了用户对软件使用的认可度。因此,需要研究一种软件版本更新的有效管理系统,能实现对各种平台上运行软件的更新进行有效管理,提高软件管理的效率,提高软件维护的方便性,减少人力、物力等资源的浪费。
发明内容
发明目的:针对上述出现的问题,本发明的目的在于提供提供一种能够极大提高软件更新管理和客户软件版本维护的方便性和高效性,节约人力和物力等资源成本的多平台软件版本管理及更新系统。
技术方案:本发明所述的多平台软件版本管理及更新系统,包括云平台服务模块、Windows更新模块和Linux更新模块;所述云平台服务模块接收客户端Windows更新模块或Linux更新模块发送的更新指令,查询版本数据库,检索本次更新的所有文件并压缩打包传输给客户端模块;所述Windows更新模块连接云平台服务模块查询软件版本信息,发送更新指令,从云平台服务模块下载版本更新文件的压缩包,在本地完成解压更新并保存更新记录;所述Linux更新模块连接云平台服务模块或Windows更新模块下载或接收版本更新文件压缩包,在本地完成解压更新并保存更新记录。
进一步的技术方案在于:所述云平台服务模块包括版本数据库、版本管理模块、权限管理模块、版本升级服务模块、版本回滚服务模块、文件打包模块等几部分。
进一步的技术方案在于:所述版本数据库包括软件的历史版本档案库和版本文件库。所述历史版本档案库存放软件的基本信息及历史版本信息。所述版本文件库分类存放各软件的可执行文件、动态链接库文件、配置文件、脚本文件及其它文件。
进一步的技术方案在于:所述版本管理模块管理软件的历史版本和调试版本,解析客户端模块发送的更新指令参数,查询版本数据库,根据目标版本号和当前版本号的关系调用版本升级服务模块或版本回滚服务模块检索要更新的所有文件。
进一步的技术方案在于:所述权限管理模块在版本数据库中配置软件适用的用户范围,在用户登录到云平台服务模块后根据用户标识过滤不在配置范围内的软件。
进一步的技术方案在于:所述文件打包模块,将所有更新文件压缩打包构成一个zip格式的压缩文件。
进一步的技术方案在于:所述Windows更新模块包括版本下载模块和版本更新模块。所述版本下载模块连接云平台服务模块,查询软件的版本发布信息,下载目标版本更新文件压缩包。所述版本更新模块备份本次更新需要覆盖的全部文件,解压版本更新文件到程序目录,保存更新记录,处理过程中出现的错误。
进一步的技术方案在于:所述Linux更新模块包括本地更新模式和远程更新模式。
所述本地更新模式,其执行流程为:Windows更新模块连接Linux更新模块,发送要更新的版本更新文件压缩包和更新指令;Linux更新模块接受更新指令,完成解压版本更新文件压缩包、备份本次更新需要覆盖的全部文件、覆盖要更新的全部文件、保存更新记录等。
所述远程更新模式,其执行执行流程为:Windows更新模块连接Linux更新模块,发送远程更新指令;Linux更新模块连接云平台服务模块,下载目标版本的更新文件压缩包,完成解压版本更新文件压缩包、备份本次更新需要覆盖的全部文件、覆盖要更新的全部文件、保存更新记录等。
进一步的技术方案在于:模块之间的通讯参数分为以下三种类型:
类型1:Windows更新模块发送给云平台服务模块传递的参数,包括软件系统标识、当前版本号、目标版本号。
类型2:Linux更新模块执行本地更新模式时,Windows更新模块发送给Linux更新模块的参数包括:版本文件压缩包在Linux更新模块的路径、Linux软件系统的标识和目标版本号、版本文件压缩包的解压路径。
类型3:Linux更新模块执行远程更新模式时,Windows更新模块发送给Linux更新模块的的参数包括:云平台服务主机的IP和端口号、Linux软件系统的标识和当前版本号及目标版本号。
采用上述技术方案所产生的有益效果在于:所述多平台软件版本管理及更新系统能够实现一个软件系统兼容多种平台上的多种软件的更新管理;可有效管理各种软件的版权及控制访问的数据流量,能够极大提高软件更新管理和客户软件版本维护的方便性和高效性,节约人力和物力等资源成本。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是本发明实施例所述系统的原理框图
图2是本发明实施例所述系统中Windows更新模块的流程图;
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
如图1所示,本发明实施例公开了多平台软件版本的管理及更新系统,此系统包括云平台服务模块、Windows更新模块、Linux更新模块三部分。
所述云平台服务模块,包括版本数据库、版本管理模块、权限管理模块、版本升级服务模块、版本回滚服务模块、文件打包模块等几部分。版本数据库包括软件的历史版本档案库和版本文件库。权限管理模块在版本数据库中配置软件适用的用户范围,并在用户登录到云平台服务模块后根据用户标识过滤不在配置范围内的软件。版本管理模块解析Windows更新模块或Linux更新模块发送的更新指令参数,包括待更新的软件标识、当前版本号、目标版本号,查询版本数据库,调用版本升级服务模块或版本回滚服务模块检索要更新的所有文件。文件打包模块将所有要更新的文件压缩打包,构成一个zip格式的压缩文件。
所述Windows更新模块,连接云平台服务模块查询云平台上软件的版本发布信息,指定要更新或回滚的版本号并发送更新指令到云平台服务模块,从云平台服务器下载更新文件的压缩包,并解压在本地完成软件的更新,同时保存本次更新记录。
所述Linux更新模块连接云平台服务模块或Windows更新模块下载更新文件的压缩包,完成本地更新并保存更新记录。
进一步的,所述Linux更新模块包括本地更新和远程更新两种模式。
本地更新模式的执行流程为:Windows更新模块连接Linux更新模块,发送要更新的版本更新文件压缩包和更新指令;Linux更新模块接受更新指令,完成解压版本更新文件压缩包、备份本次更新需要覆盖的全部文件、覆盖要更新的全部文件、保存更新记录等。
远程更新的执行流程为:Windows更新模块连接Linux更新模块,发送远程更新指令;Linux更新模块连接云平台服务模块下载目标版本的更新文件压缩包,完成解压版本更新文件压缩包、备份本次更新需要覆盖的全部文件、覆盖要更新的全部文件、保存更新记录等。
如图2所示为本发明实施例所述系统中Windows桌面软件更新模块的工作流程图:
步骤一:用户插入软件狗,启动Windows更新模块,输入云平台服务主机的IP地址和端口号并建立连接。
步骤二:Windows更新模块读取软件狗内置用户标识发送给云平台更新模块。
步骤三:云平台更新模块调用权限管理模块,根据用户标识查询与登录用户有关的所有发布软件的基本信息,过滤掉与其它用户有关的软件信息。
步骤四:用户在界面上选择要更新的软件及目标版本号,Windows更新模块调用版本更新模块取得软件代码、目标版本号和当前版本号,发送更新请求指令给云平台服务模块。
步骤五:云平台服务模块接收到更新指令后,调用版本管理模块查询版本数据库,检索出所有更新文件,调用文件打包模块构成版本更新文件压缩包,并通知Windows更新模块。
步骤六:Windows更新模块调用版本下载模块从云平台下载版本更新文件压缩包,备份本次更新需要覆盖的全部文件、解压版本更新文件到程序目录。
步骤七:本地更新结束后,Windows更新模块输出更新的结果并保存更新记录。
步骤八:如果一次执行多个软件版本的更新,则依次重复步骤五至步骤七。
所述多平台软件版本管理及更新系统能够实现一个软件系统兼容多种平台上的多种软件的更新管理;可有效管理各种软件的版权及控制访问的数据流量,能够极大提高软件更新管理和客户软件版本维护的方便性和高效性,节约人力和物力等资源成本。
Claims (4)
1.一种多平台软件版本管理及更新系统,包括云平台服务模块、Windows更新模块和Linux更新模块三个部分;
所述云平台服务模块接收客户端Windows更新模块或Linux更新模块发送的更新指令,查询版本数据库,检索与本次更新有关的文件并压缩打包传输给相应客户端模块;
所述Windows更新模块连接云平台服务模块查询软件版本信息,并发送更新指令,从云平台服务模块下载更新文件的压缩包,在本地完成解压更新,保存更新记录;
所述Linux更新模块连接云平台服务模块或Windows更新模块下载或接收版本更新文件包,完成本地更新并保存更新记录;所述云平台服务模块包括版本数据库、版本管理模块、权限管理模块、版本升级服务模块、版本回滚服务模块、文件打包模块;
所述权限管理模块在版本数据库中配置软件适用的用户范围,在用户登录云平台服务模块时根据用户标识过滤不在配置范围内的软件;
所述版本回滚服务模块,按照回滚算法提供从当前版本到回滚目标版本的所有文件;
所述回滚算法,由云平台服务模块找到目标版本之前最近的全版本,依次查找当前版本到目标版本的之间所有更新文件,检索每个文件的最低版本并和全版本中的相同文件进行版本比较,筛选出所有更新文件的最低版本文件一起组成版本更新包;
所述文件打包模块,将所有更新文件压缩打包构成一个zip格式的压缩文件;
所述Linux更新模块包括本地更新模式和远程更新模式;
所述本地更新模式,其执行流程为:Windows更新模块连接Linux更新模块,发送要更新的版本更新文件压缩包和更新指令;Linux更新模块接受更新指令,完成解压版本更新文件压缩包、备份本次更新需要覆盖的全部文件、覆盖要更新的全部文件、保存更新记录;
所述远程更新模式,其执行流程为:Windows更新模块连接Linux更新模块,发送远程更新指令;Linux更新模块连接云平台服务模块下载目标版本的更新文件压缩包,完成版本文件压缩包、备份本次更新需要覆盖的全部文件、覆盖要更新的全部文件、保存更新记录;
所述软件版本升级服务模块,按照升级算法提供从当前版本到更新目标版本的所有文件;
所述升级算法,由云平台服务模块找到目标版本之前最近的全版本,依次查找出当前版本到目标版本的之间所有更新文件,检索每个文件的最新版本并与全版本中的相同文件进行版本比较,筛选出所有更新文件的最新版本文件一起组成版本更新包;
所述全版本,为软件当前版本的整体安装包,包含了当前软件版本的全部文件;
所述Windows更新模块包括版本下载模块和版本更新模块;
所述版本下载模块通过网络连接云平台服务模块,查询软件的版本发布信息,下载目标版本更新文件压缩包;
所述版本更新模块包括三大功能,功能1:备份本次更新需要覆盖的全部原文件;功能2:解压版本更新文件到程序目录,保存更新记录;功能3:更新异常处理,如功能2过程出现错误,恢复功能1备份的文件、清除本次更新信息。
2.如权利要求1所述的多平台软件版本管理及更新系统,其特征在于:所述版本数据库包括软件的历史版本档案库和版本文件库;所述历史版本档案库存放软件的基本信息及历史版本信息;所述版本文件库分类存放各软件的可执行文件、动态链接库文件、配置文件、脚本文件及其它文件。
3.如权利要求1所述的多平台软件版本管理及更新系统,其特征在于:所述版本管理模块管理软件的历史版本和调试版本,解析客户端发送的更新指令参数,查询版本数据库检索要更新的所有文件信息。
4.如权利要求1所述的多平台软件版本管理及更新系统,其特征在于模块之间传递的参数分为以下三种类型:
类型1:Windows更新模块发送给云平台服务模块的参数,包括软件系统标识、当前版本号、目标版本号;
类型2;Linux更新模块本地更新模式,Windows更新模块发送给Linux更新模块的参数包括:版本文件压缩包在Linux更新模块的路径、Linux软件的标识、目标版本号、版本文件压缩包的解压路径;
类型3:Linux更新模块远程更新模式,Windows更新模块发送给Linux更新模块的参数包括:云平台服务主机的IP、云平台服务模块的端口号、Linux软件的标识和当前版本号及目标版本号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011418744.7A CN112527381B (zh) | 2020-12-07 | 2020-12-07 | 多平台软件版本管理及更新系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011418744.7A CN112527381B (zh) | 2020-12-07 | 2020-12-07 | 多平台软件版本管理及更新系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112527381A CN112527381A (zh) | 2021-03-19 |
CN112527381B true CN112527381B (zh) | 2021-12-07 |
Family
ID=74997211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011418744.7A Active CN112527381B (zh) | 2020-12-07 | 2020-12-07 | 多平台软件版本管理及更新系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527381B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11824714B2 (en) * | 2020-12-21 | 2023-11-21 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and apparatus for updating an edge node, device, medium and program product |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115309703B (zh) * | 2022-10-10 | 2023-01-03 | 联想凌拓科技有限公司 | 文件读取方法及装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102118500A (zh) * | 2010-12-27 | 2011-07-06 | 清华大学 | 移动终端开源操作系统基于软件包的在线自动更新方法 |
CN103647816A (zh) * | 2013-12-03 | 2014-03-19 | 北京奇虎科技有限公司 | 一种应用软件升级的方法及装置 |
CN103997506A (zh) * | 2013-02-19 | 2014-08-20 | 成都勤智数码科技股份有限公司 | 适于软件系统的自动部署升级系统 |
CN107092512A (zh) * | 2017-06-14 | 2017-08-25 | 成都三零凯天通信实业有限公司 | 一种跨平台远程升级系统及方法 |
CN111026423A (zh) * | 2019-12-09 | 2020-04-17 | 深信服科技股份有限公司 | 软件升级方法、装置、设备及存储介质 |
CN111736862A (zh) * | 2020-05-22 | 2020-10-02 | 深圳市鸿合创新信息技术有限责任公司 | 一种多端协同升级方法、装置、终端及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090164994A1 (en) * | 2007-12-20 | 2009-06-25 | Virtual Computer, Inc. | Virtual computing management systems and methods |
US10325102B2 (en) * | 2013-05-23 | 2019-06-18 | yTrre, Inc. | Real-time customer experience management systems and methods |
CN107870774A (zh) * | 2017-11-24 | 2018-04-03 | 武汉精测电子集团股份有限公司 | 一种用于aoi系统软件版本管理的系统 |
CN111147272A (zh) * | 2018-11-06 | 2020-05-12 | 厦门雅迅网络股份有限公司 | 一种单服务器及多服务器运营平台升级方法 |
CN110196722B (zh) * | 2019-05-07 | 2023-11-28 | 平安科技(深圳)有限公司 | 云主机批量管理方法、系统、设备及存储介质 |
-
2020
- 2020-12-07 CN CN202011418744.7A patent/CN112527381B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102118500A (zh) * | 2010-12-27 | 2011-07-06 | 清华大学 | 移动终端开源操作系统基于软件包的在线自动更新方法 |
CN103997506A (zh) * | 2013-02-19 | 2014-08-20 | 成都勤智数码科技股份有限公司 | 适于软件系统的自动部署升级系统 |
CN103647816A (zh) * | 2013-12-03 | 2014-03-19 | 北京奇虎科技有限公司 | 一种应用软件升级的方法及装置 |
CN107092512A (zh) * | 2017-06-14 | 2017-08-25 | 成都三零凯天通信实业有限公司 | 一种跨平台远程升级系统及方法 |
CN111026423A (zh) * | 2019-12-09 | 2020-04-17 | 深信服科技股份有限公司 | 软件升级方法、装置、设备及存储介质 |
CN111736862A (zh) * | 2020-05-22 | 2020-10-02 | 深圳市鸿合创新信息技术有限责任公司 | 一种多端协同升级方法、装置、终端及存储介质 |
Non-Patent Citations (4)
Title |
---|
How to Update Node.js to Latest Version {Linux, Windows, and macOS};Sofija Simic;《https://phoenixnap.com/kb/update-node-js-version》;20200129;1-21 * |
ModChecker: Kernel Module Integrity Checking in the Cloud Environment;Irfan Ahmed;《2012 41st International Conference on Parallel Processing Workshops》;20120913;306-313 * |
云平台下可扩展分布式协调服务研究;林浩泓;《中国优秀硕士学位论文全文数据库 信息科技辑》;20141015;I139-72 * |
如何在Windows系统上利用Telnet协议连接Linux服务器?;服务器之家;《http://www.zzvips.com/article/20218.html》;20191018;1-5 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11824714B2 (en) * | 2020-12-21 | 2023-11-21 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and apparatus for updating an edge node, device, medium and program product |
Also Published As
Publication number | Publication date |
---|---|
CN112527381A (zh) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112527381B (zh) | 多平台软件版本管理及更新系统 | |
CN1291313C (zh) | 操作系统的自动安装和配置的系统和方法 | |
US8407690B2 (en) | Method in a network of the delivery of files | |
US8266617B2 (en) | Software distribution method and system | |
CN110196731B (zh) | 一种运维系统、方法及存储介质 | |
CN107844343B (zh) | 一种复杂服务端应用系统的升级系统及方法 | |
CN1252951C (zh) | 节点b单板软件下载及升级方法 | |
CN1257365A (zh) | 网络管理系统中数据库同步用的方法和装置 | |
CN113946358A (zh) | 一种基于车辆管理系统的自动驾驶车辆软件远程升级方法 | |
CN105260209A (zh) | 一种程序热更新解决方法 | |
CN1878366A (zh) | 移动电话的固件升级方法 | |
CN110233893B (zh) | 一种基于ansible的服务器文件高效更新的方法及系统 | |
CN111399862A (zh) | Windows缺失驱动的批量安装方法、装置和计算机设备 | |
CN110795105A (zh) | 一种配电自动化主站系统自动编译部署方法与系统 | |
CN115202680A (zh) | 在线远程自动升级本地客户端的系统及方法 | |
US7340738B2 (en) | Time optimized replacement of a software application | |
US20040255201A1 (en) | System and method for performing product tests utilizing a single storage device | |
KR100416809B1 (ko) | 원격 다운로드를 위한 유니트의 메모리 구조 및 원격다운로드 방법 | |
CN115809096A (zh) | 操作系统批量自适应升级方法 | |
CN115543429A (zh) | 项目环境的搭建方法、电子设备及计算机可读存储介质 | |
CN115344273A (zh) | 一种基于货架系统来运行应用软件的方法及系统 | |
CN111770487B (zh) | 一种接入点名称apn信息配置方法、设备及介质 | |
CN114840243A (zh) | 一种分布式边缘节点的操作系统升级系统 | |
CN113609526A (zh) | 一种操作系统的升级方法、装置及设备 | |
CN110795113A (zh) | 一种Redis集群服务的安装方法、服务器和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220224 Address after: 100023 floor 2, block a, building 1, yard 139, Jinghai Third Road, Beijing Economic and Technological Development Zone, Daxing District, Beijing Patentee after: PONOVO POWER Co.,Ltd. Address before: No.33 Dongqi Road, Dongshan street, Jiangning District, Nanjing City, Jiangsu Province, 210000 Patentee before: NANJING NENGYUN ELECTRIC POWER TECHNOLOGY CO.,LTD. |