专利名称:一种安装包多地址智能下载的方法及系统的制作方法
技术领域:
本发明涉及计算机网络通信领域,尤其涉及一种安装包多地址智能下载的方法及系统。
背景技术:
目前,对于安装包下载的方法只局限于从固定的下载地址完成安装包的下载,如果在有多个下载服务器的情况下会产生服务器负载过大用户无法实现不同网络环境下智能下载;那么,如果下载器能够自动选择一个当前负载比较低的服务器,下载速度和用户体验也能够得到相应的提升。
发明内容
本发明提供了一种安装包多地址智能下载的方法及系统,可以自动平衡服务器的负载并根据相应的校验方法在安装包下载失败的情况下可以实现自动转移到其他服务器, 使其可以顺利完成安装包下载任务。一种安装包多地址智能下载的方法,其特征在于,包括 通过URL从指定下载地址获取所需要安装包下载地址列表,其中,
所述的安装包下载地址列表包括安装包下载地址、安装包下载地址的优先级、安装包文件的MD5 ;
根据安装包下载地址列表解析出安装包全部下载地址及对应的每个下载地址的优先
级;
根据所解析的对应的每个下载地址的优先级,从安装包下载地址列表中自动平衡方式选择一个下载地址下载所需要安装包;
将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行校验;
如果已下载安装包文件的MD5与下载列表中安装包文件的MD5相同,则安装包下载成
功;
如果已下载安装包文件的MD5与下载列表中安装包文件的MD5不相同,则从剩余下载地址中重新以自动平衡方式选择一个下载地址下载所需要安装包。所述的方法中安装包下载地址优先级,根据服务器负载值或服务器网络性能值来判断下载地址优先级,当服务器负载或服务器网络性能大于预先设定的判断值就定为优先级为高状态。所述的自动平衡方式,是从下载列表中优先级为高状态的下载地址进行随机选取。一种安装包多地址智能下载的系统,其特征在于,包括
获取模块,用于通过URL从指定下载地址获取所需要安装包下载地址列表,其中所述的安装包下载地址列表包括安装包全部下载地址、安装包全部下载地址的优先级、安装包文件的MD5 ;解析模块,用于根据获取所需要安装包下载地址列表解析出全部安装包下载地址并读取对应的每个下载地址的优先级;
下载模块,根据所解析的对应的每个下载地址的优先级,从安装包下载地址列表中自动平衡方式选择一个下载地址下载所需要安装包;
判断模块,用于将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行比较确定所需要安装包是否下载成功。所述的系统中安装包下载地址优先级,根据服务器负载值或服务器网络性能值来判断下载地址优先级,当服务器负载或服务器网络性能大于预先设定的判断值就定为优先级为高状态。所述的自动平衡方式,是从下载列表中优先级为高状态的下载地址进行随机选取。所述的系统中用于将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行比较,包括
如果已下载安装包文件的MD5与下载列表中安装包文件的MD5相同,则安装包下载成
功;
如果已下载安装包文件的MD5与下载列表中安装包文件的MD5不相同,则从剩余下载地址中重新以自动平衡方式选择一个下载地址下载所需要安装包。本发明提供了一种安装包多地址智能下载的方法及系统,其中所提出的方法是通过URL从指定下载地址获取所需要安装包下载地址列表,其中安装包下载地址列表包括安装包下载地址、安装包下载地址优先级、安装包文件的MD5 ;并根据所解析出下载地址对应的优先级进行随机选取安装包下载址;而所提出的系统是由获取模块获取安装包下载列表、解析模块解析出安装包下载列的优先级、下载模块为避免服务器负载过重进行随机选择最适合的安装包下载、判断模块确定出最终是否下载成功,四大功能模块组成;实现减少服务器负载情况下安装包智能下载。
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为一种安装包多地址智能下载的方法流程图; 图2为一种安装包多地址智能下载的系统结构图。
具体实施例方式为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。一种安装包多地址智能下载的方法,如图1所示,包括
SlOl通过URL从指定下载地址获取所需要安装包下载地址列表,其中,所述的安装包下载地址列表包括安装包下载地址、安装包下载地址的优先级、安装包文件的MD5 ;
S102根据获取所需要安装包下载地址列表解析出安装包全部下载地址及对应的每个下载地址的优先级;
S103根据所解析的对应的每个下载地址的优先级,从安装包下载地址列表中自动平衡方式选择一个下载地址下载所需要安装包;
S104将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行校验; 如果已下载安装包文件的MD5与下载列表中安装包文件的MD5相同,则执行步骤S105 安装包下载成功;
如果已下载安装包文件的MD5与下载列表中安装包文件的MD5不相同,则执行步骤 S106从剩余下载地址中重新以自动平衡方式选择一个下载地址下载所需要安装包。所述的安装包下载地址优先级,根据服务器负载值或服务器网络性能值来判断下载地址优先级,当服务器负载值或服务器网络性能值大于预先设定的判断值就定为优先级为高状态。例如,随着对服务器当前情况的实时更新,那么服务器负载不断变化,这时优先级也就不断出现变化;此时预先设定一个值对网络性测验及负载状态进行实时更新。所述的自动平衡方式,是从下载列表中优先级高的下载地址进行随机选取。上述所提出的一种安装多地址包智能下载的方法,可以应用在单独客户端中即, 可以设定为转属的下载工具;此方法主要是通过客户端对安装包配置文件指定一个URL获取安装包下载列表确定下载列表中的下载地址均为可应用的,安装包下载列表中对每一个可应的下载地址都配备上相应的优先级,而这个优先极是根据服务器负载高低或服务器的网络性能好坏来确定;而在选择安装下载地址时以随机方式选取是考虑减少服务器负载过重,平均情况下使用优先级越高的下载地址得到更多的下载机会;为了确定安装包文件是否完全下载,则对安装包下载之前下载列表中的安装包文件MD5与安装包下载之后的文件 MD5进行校验确定,以保证安装包下载完整。一种安装包多地下智能下载的系统,如图2所示,包括
获取模块201,用于通过URL从指定下载地址获取所需要安装包下载地址列表,其中所述的安装包下载地址列表包括安装包全部下载地址、安装包全部下载地址的优先级、安装包文件的MD5 ;
解析模块202,用于根据获取所需要安装包下载地址列表解析出全部安装包下载地址并读取对应的每个下载地址的优先级;
下载模块203,根据所解析的对应的每个下载地址的优先级,从安装包下载地址列表中自动平衡方式选择一个下载地址下载所需要安装包;
判断模块204,用于将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行比较确定所需要安装包是否下载成功。所述的系统中,安装包下载地址优先级,根据服务器负载值或服务器网络性能值来判断下载地址优先级,当服务器负载或服务器网络性能大于预先设定的判断值就定为优先级为高状态。所述的系统中,自动平衡方式是从下载列表中优先级为高状态的下载地址进行随机选取。
所述的系统中,所述的用于将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行比较,包括
如果已下载安装包文件的MD5与下载列表中安装包文件的MD5相同,则安装包下载成
功;
如果已下载安装包文件的MD5与下载列表中安装包文件的MD5不相同,则从剩余下载地址中重新以自动平衡方式选择一个下载地址下载所需要安装包。本发明提供了一种安装包多地址智能下载的方法及系统,能够实现智能获取安装包下载地址并且可以平衡服务器的负载通过确定下载地址优先级来完成对安装包多个下载地址前提下选择最适合的完成安装包完整下载。其中所提出的方法是通过URL从指定下载地址获取所需要安装包下载地址列表,其中安装包下载地址列表包括安装包下载地址、 安装包下载地址优先级、安装包文件的MD5 ;并根据所解析出下载地址对应的优先级进行随机选取安装包下载址;而所提出的系统是由获取模块获取安装包下载列表、解析模块解析出安装包下载列的优先级、下载模块为避免服务器负载过重进行随机选择最适合的安装包下载、判断模块确定出最终是否下载成功,四大功能模块组成;实现减少服务器负载情况下安装包智能下载。虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。
权利要求
1.一种安装包多地址智能下载的方法,其特征在于,包括通过URL从指定下载地址获取所需要安装包下载地址列表,其中, 所述的安装包下载地址列表包括安装包下载地址、安装包下载地址的优先级、安装包文件的MD5 ;根据安装包下载地址列表解析出安装包下载地址及对应的每个下载地址的优先级; 根据所解析的对应的每个下载地址的优先级,从安装包下载地址列表中自动平衡方式选择一个下载地址下载所需要安装包;将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行校验;如果已下载安装包文件的MD5与下载列表中安装包文件的MD5相同,则安装包下载成功;如果已下载安装包文件的MD5与下载列表中安装包文件的MD5不相同,则从剩余下载地址中重新以自动平衡方式选择一个下载地址下载所需要安装包。
2.如权利要求1所述的方法,其特征在于,所述的安装包下载地址优先级,包括根据服务器负载值或服务器网络性能值来判断下载地址优先级,当服务器负载值或服务器网络性能值大于预先设定的判断值就定为优先级为高状态。
3.如权利要求1所述的方法,其特征在于,所述的自动平衡方式,是从下载列表中优先级为高状态的下载地址进行随机选取。
4.一种安装包多地址智能下载的系统,其特征在于,包括获取模块,用于通过URL从指定下载地址获取所需要安装包下载地址列表,其中所述的安装包下载地址列表包括安装包全部下载地址、安装包全部下载地址的优先级、安装包文件的MD5 ;解析模块,用于安装包下载地址列表解析出全部安装包下载地址并读取对应的每个下载地址的优先级;下载模块,根据所解析的对应的每个下载地址的优先级,从安装包下载地址列表中自动平衡方式选择一个下载地址下载所需要安装包;判断模块,用于将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行比较确定所需要安装包是否下载成功。
5.如权利要求4所述的系统,其特征在于,所述的安装包下载地址优先级,包括根据服务器负载值或服务器网络性能值来判断下载地址优先级,当服务器负载值或服务器网络性能值大于预先设定的判断值就定为优先级为高状态。
6.如权利要求4所述的系统,其特征在于,所述的自动平衡方式,是从下载列表中优先级为高状态的下载地址进行随机选取。
7.如权利要求4所述的系统,其特征在于,所述的用于将已下载安装包文件的MD5与下载列表中安装包文件的MD5进行比较,包括如果已下载安装包文件的MD5与下载列表中安装包文件的MD5相同,则安装包下载成功;如果已下载安装包文件的MD5与下载列表中安装包文件的MD5不相同,则从剩余下载地址中重新以自动平衡方式选择一个下载地址下载所需要安装包。
全文摘要
本发明提供了一种安装包多地址智能下载的方法及系统,其中所提出的方法是通过URL从指定下载地址获取所需要安装包下载地址列表,其中安装包下载地址列表包括安装包下载地址、安装包下载地址优先级、安装包文件的MD5;并根据所解析出下载地址对应的优先级进行随机选取安装包下载址;而所提出的系统是由获取模块获取安装包下载列表、解析模块解析出安装包下载列的优先级、下载模块为避免服务器负载过重进行随机选择最适合的安装包下载、判断模块确定出最终是否下载成功,实现客户端减少服务器负载情况下安装包智能下载。
文档编号H04L29/08GK102457574SQ20111032224
公开日2012年5月16日 申请日期2011年10月21日 优先权日2011年10月21日
发明者关墨辰, 徐瀚隆, 方华, 李果, 范立志 申请人:北京安天电子设备有限公司