快速扩容的软件升级方法技术

技术编号:19963842 阅读:28 留言:0更新日期:2019-01-03 12:37
本发明专利技术提供一种快速扩容的软件升级方法,包括:待更新设备被周期性唤醒后,根据本地索引文件中的服务器地址,从对应软件更新服务器中下载目标索引文件,判断本地索引文件与目标索引文件中的服务器地址是否相同,若相同,则根据本地索引文件中的设备型号,从目标索引文件中查找到对应的软件版本号,从本地索引文件中服务器地址对应的服务器中下载对应的软件升级包;否则,将目标索引文件中服务器地址对应的服务器作为目标服务器,从目标服务器中下载扩容索引文件,将本地索引文件中的服务器地址替换成目标索引文件中的服务器地址,根据本地索引文件中的设备型号,从扩容索引文件中查找到对应的软件版本号,从目标服务器下载对应的软件升级包。

Software Upgrading Method for Fast Expansion

The invention provides a fast expanding software upgrade method, which includes: after the updating device is periodically awakened, the target index file is downloaded from the corresponding software updating server according to the server address in the local index file, judging whether the local index file is the same as the server address in the target index file, and if the same, according to the device type in the local index file. Number, find the corresponding software version number from the target index file, download the corresponding software upgrade package from the server corresponding to the server address in the local index file; otherwise, take the server corresponding to the server address in the target index file as the target server, download the expansion index file from the target server, and replace the server address in the local index file with the server address in the local index file. The server address in the target index file, according to the device type in the local index file, can find the corresponding software version number from the expanded index file, and download the corresponding software upgrade package from the target server.

【技术实现步骤摘要】
快速扩容的软件升级方法
本专利技术属于计算机/IT领域,具体涉及一种快速扩容的软件升级方法。
技术介绍
在计算机领域,对于已经安装的软件,经常需要对其进行升级,常用的升级方法有两种:第一种,待更新设备与软件更新服务器建立通信连接后,服务器向待更新设备主动推送更新提醒,待更新设备在收到更新提醒后可下载更新包完成软件升级;第二种,待更新设备定时主动向服务器查询是否有更新,如果有更新,则下载更新包完成软件升级,如果没有更新,则完成查询。第一种方式要求服务器要始终可以访问到待更新设备,这种方式对应用场景有限制:要么是在同一个网络内部(不能有NAT),要么需要建立服务器和待更新设备的长连接,否则服务器无法发送更新消息给待更新设备。当待更新设备的数量很大时,还会产生并发访问服务器的情况。第二种方式虽然对应用场景没有限制,但是待更新设备同时访问软件更新服务器会造成服务器瞬间的高负载,如果继续进行软件更新发生,还会有持续的高负载发生。通常解决类似高并发的问题是通过负载分担服务器来完成,前端部署一个高性能的负载分担服务器,后端部署若干台业务处理服务器。这种解决方案很经典,但是部署成本和技术难度也较高,对于一个业务刚起步,又有扩展需求的小型企业来说成本和门槛都太高。
技术实现思路
本专利技术提供一种基于快速扩容的软件升级方法,以解决目前软件升级负载分担方式成本和技术难度较高的问题。根据本专利技术实施例的第一方面,提供一种快速扩容的软件升级方法,包括:待更新设备的升级任务被周期性唤醒后,根据本地索引文件中的服务器地址,从对应软件更新服务器中下载目标索引文件;在所述目标索引文件下载成功后,所述待更新设备将所述本地索引文件中的服务器地址与所述目标索引文件中的服务器地址进行比较,若相同,则将所述本地索引文件中服务器地址对应的软件更新服务器作为目标服务器,根据所述本地索引文件中的设备型号,从所述目标索引文件中查找到对应的软件版本号,从对应目标服务器中下载对应的软件升级包进行软件升级;若不相同,则将所述目标索引文件中服务器地址对应的软件更新服务器作为目标服务器,从对应目标服务器中下载扩容索引文件;在所述扩容索引文件下载成功后,所述待更新设备将所述本地索引文件中的服务器地址替换成所述目标索引文件中的服务器地址,并根据所述本地索引文件中的设备型号,从所述扩容索引文件中查找到对应的软件版本号,从对应目标服务器中下载对应的软件升级包进行软件升级。在一种可选的实现方式中,在本地索引文件中配置有唤醒周期,值域为10至1440分钟,所述待更新设备被唤醒的时间为:N×唤醒周期+随机数,N为整数,随机数为随机生成的0至唤醒周期之间的任意整数,所述待更新设备被唤醒的时间是24小时制,精确到分钟,值域为:00:00至23:59。在另一种可选的实现方式中,所述目标索引文件和扩容索引文件中配置有唤醒周期,若所述本地索引文件中的服务器地址与所述目标索引文件中的服务器地址相同,则所述待更新设备将所述本地索引文件和所述目标索引文件中的唤醒周期进行比较,若相同,则不更新唤醒周期,若不相同,则将所述本地索引文件中的唤醒周期替换为所述目标索引文件中的唤醒周期;若所述本地索引文件中的服务器地址与所述目标索引文件中的服务器地址不相同,则所述待更新设备在所述扩容索引文件下载成功后,将所述本地索引文件和所述扩容索引文件中的唤醒周期进行比较,若相同,则不更新唤醒周期,若不相同,则将所述本地索引文件中的唤醒周期替换为所述扩容索引文件中的唤醒周期。在另一种可选的实现方式中,根据唤醒周期可影响目标服务器的负载情况以及软件更新的及时性;对所述唤醒周期进行调节,其中唤醒周期越大,各个待更新设备并发访问目标服务器的概率越小,目标服务器的负载较小,同时软件更新的及时性降低。在另一种可选的实现方式中,在所述目标索引文件下载失败时,所述待更新设备的升级任务进入空闲状态,等待下一次被唤醒;在所述扩容索引文件下载失败时,所述待更新设备将所述本地索引文件中服务器地址对应的软件更新服务器作为目标服务器,根据所述本地索引文件中的设备型号,从所述目标索引文件中查找到对应的软件版本号,从而从对应目标服务器中下载对应的软件升级包进行软件升级。在另一种可选的实现方式中,在从对应目标服务器中下载对应的软件升级包进行软件升级之前,还包括:判断所述本地索引文件中的软件版本号与查找到的软件版本号是否相同,若相同,则不进行升级,所述升级任务进入空闲状态,等待下一次被唤醒;若不相同,则从对应目标服务器中下载对应的软件升级包进行软件升级;在从对应目标服务器中下载对应的软件升级包进行软件升级之后,还包括:更新所述本地索引文件中的软件版本号。在另一种可选的实现方式中,所述软件更新服务器在唤醒周期到时,进入下一唤醒周期之前,将所述目标索引文件中的服务器地址恢复为其自身的服务器地址。在另一种可选的实现方式中,基于服务器负载情况,在唤醒周期内的指定时间段,通过更改所述软件更新服务器中目标索引文件的服务器地址,使访问所述软件更新服务器的对应部分待更新设备从所述软件更新服务器迁移到对应目标服务器上,从而进行软件升级。在另一种可选的实现方式中,所述待更新设备在从对应目标服务器中下载对应的软件升级包进行软件升级时,还向对应目标服务器上传其设备唯一标识,以便所述目标服务器记录对应待更新设备的更新时间以及本次更新的软件版本号。在另一种可选的实现方式中,所述目标服务器将其记录的各个待更新设备的设备型号、软件版本号上传给根服务器,所述根服务器根据各个目标服务器记录的待更新设备的设备型号、软件版本号,对各个目标服务器的负载情况进行统计,并根据统计出的负载情况,对目标服务器的增减进行调整;所述根服务器还用于统一将软件升级包下发给各个目标服务器,并对其自身和各个目标服务器的索引文件中的目标服务器地址、唤醒周期、所有设备型号以及与之对应的软件版本号中的至少一项进行更改;所述根服务器在整个系统中是唯一的,它的地址是待更新设备出厂预置的本地索引文件中的缺省的服务器地址。本专利技术的有益效果是:本专利技术前期成本投入较少,后期随着业务的发展可实现平滑扩容,当业务没有开展起来时,只需要投入根服务器来支持软件升级,当根服务器的性能不能满足升级要求时,可以创建新的软件更新服务器,将现有根服务器上的升级业务迁移到新服务器上,仍旧用根服务器做新上线设备的升级服务器,以此平滑地扩大系统升级业务的处理能力;本专利技术提供唤醒周期配置功能,通过调整唤醒周期,可以微调对服务器的负载;周期大些,再加上随机数的贡献,设备并发访问服务器的概率小些,服务器并发处理的负载低些;同时唤醒周期最大值1440的限制又能保证所有设备在更新软件包上线后一天内都能够完成升级;本专利技术除了安装新的软件更新服务器外,所有的软件包的管理、更新软件服务器的配置、业务迁移等都是通过根服务器来完成的,降低了软件维护的难度,同时可以从根服务器查看所有软件更新服务器的负载情况、设备在线情况。附图说明图1是本专利技术快速扩容的软件升级方法所应用系统的一个实施例结构图;图2是本专利技术快速扩容的软件升级方法的一个实施例流程图。具体实施方式为了使本
的人员更好地理解本专利技术实施例中的技术方案,并使本专利技术实施例的上述目的、特征和优点能够更加明显易懂,本文档来自技高网
...

【技术保护点】
1.一种快速扩容的软件升级方法,其特征在于,包括:待更新设备的升级任务被周期性唤醒后,根据本地索引文件中的服务器地址,从对应软件更新服务器中下载目标索引文件;在所述目标索引文件下载成功后,所述待更新设备将所述本地索引文件中的服务器地址与所述目标索引文件中的服务器地址进行比较,若相同,则将所述本地索引文件中服务器地址对应的软件更新服务器作为目标服务器,根据所述本地索引文件中的设备型号,从所述目标索引文件中查找到对应的软件版本号,从对应目标服务器中下载对应的软件升级包进行软件升级;若不相同,则将所述目标索引文件中服务器地址对应的软件更新服务器作为目标服务器,从对应目标服务器中下载扩容索引文件;在所述扩容索引文件下载成功后,所述待更新设备将所述本地索引文件中的服务器地址替换成所述目标索引文件中的服务器地址,并根据所述本地索引文件中的设备型号,从所述扩容索引文件中查找到对应的软件版本号,从对应目标服务器中下载对应的软件升级包进行软件升级。

【技术特征摘要】
1.一种快速扩容的软件升级方法,其特征在于,包括:待更新设备的升级任务被周期性唤醒后,根据本地索引文件中的服务器地址,从对应软件更新服务器中下载目标索引文件;在所述目标索引文件下载成功后,所述待更新设备将所述本地索引文件中的服务器地址与所述目标索引文件中的服务器地址进行比较,若相同,则将所述本地索引文件中服务器地址对应的软件更新服务器作为目标服务器,根据所述本地索引文件中的设备型号,从所述目标索引文件中查找到对应的软件版本号,从对应目标服务器中下载对应的软件升级包进行软件升级;若不相同,则将所述目标索引文件中服务器地址对应的软件更新服务器作为目标服务器,从对应目标服务器中下载扩容索引文件;在所述扩容索引文件下载成功后,所述待更新设备将所述本地索引文件中的服务器地址替换成所述目标索引文件中的服务器地址,并根据所述本地索引文件中的设备型号,从所述扩容索引文件中查找到对应的软件版本号,从对应目标服务器中下载对应的软件升级包进行软件升级。2.根据权利要求1所述的快速扩容的软件升级方法,其特征在于,在本地索引文件中配置有唤醒周期,值域为10至1440分钟,所述待更新设备被唤醒的时间为:N×唤醒周期+随机数,N为整数,随机数为随机生成的0至唤醒周期之间的任意整数,所述待更新设备被唤醒的时间是24小时制,精确到分钟,值域为:00:00至23:59。3.根据权利要求1或2所述的快速扩容的软件升级方法,其特征在于,所述目标索引文件和扩容索引文件中配置有唤醒周期,若所述本地索引文件中的服务器地址与所述目标索引文件中的服务器地址相同,则所述待更新设备将所述本地索引文件和所述目标索引文件中的唤醒周期进行比较,若相同,则不更新唤醒周期,若不相同,则将所述本地索引文件中的唤醒周期替换为所述目标索引文件中的唤醒周期;若所述本地索引文件中的服务器地址与所述目标索引文件中的服务器地址不相同,则所述待更新设备在所述扩容索引文件下载成功后,将所述本地索引文件和所述扩容索引文件中的唤醒周期进行比较,若相同,则不更新唤醒周期,若不相同,则将所述本地索引文件中的唤醒周期替换为所述扩容索引文件中的唤醒周期。4.根据权利要求3所述的快速扩容的软件升级方法,其特征在于,根据唤醒周期可影响目标服务器的负载情况以及软件更新的及时性;对所述唤醒周期进行调节,其中唤醒周期越大,各个待更新设备并发访问目标服务器的概率越小,目标服务器的负载较小,同时软件更新的及时性降低。5.根据权利...

【专利技术属性】
技术研发人员:杨玲张伦
申请(专利权)人:重庆惠家通信息技术有限公司
类型:发明
国别省市:重庆,50

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

1