一种文件更新方法、相关设备和系统的制作方法

文档序号:9261250阅读:202来源:国知局
一种文件更新方法、相关设备和系统的制作方法
【技术领域】
[0001] 本发明涉及互联网领域,尤其涉及一种文件更新方法、相关设备和系统。
【背景技术】
[0002] 目前终端上安装的软件的数量越来越多,给用户的生活带来极大的便利。在软件 的使用过程中,服务器会定期发布新版本的软件,提示用户更新终端上的旧版本的软件,用 户如果下载全部的新版本软件进行更新的会消耗大量的网络流量。
[0003] 为了减少网络流量的消耗提出了一种增量更新方法,终端上的软件需要更新使, 服务器采用某一种增量更新算法得到新版本文件和旧版本文件之间的增量包,将增量包发 送给终端,终端利用增量包合成新版本文件。但是,由于文件结构的差异,没有一种增量更 新算法生成的增量包总是小于其他的增量更新算法,文件更新时消耗的网络流量仍然较 大。

【发明内容】

[0004] 本发明实施例所要解决的技术问题在于,提供一种文件的更新方法。可解决文件 更新时网络流量消耗较大的问题。
[0005] 为了解决上述技术问题,本发明实施例提供了一种文件的更新方法,包括:
[0006] 服务器接收终端发送的更新请求,所述更新请求包括:待更新文件的当前版本号 和目标版本号;
[0007]若预设的数据库中存在与所述当前版本号和所述目标版本号关联的增量包集合, 从所述增量包集合中选取大小最小的增量包作为目标增量包;其中,所述增量包集合中包 括至少两个增量包,每个增量包使用的增量更新算法类型不相同;
[0008] 所述服务器向所述终端返回更新响应,所述更新响应包括所述目标增量包和所述 目标增量包使用的增量更新算法类型。
[0009] 相应地,本发明实施例还提供了一种服务器,包括:
[0010] 接收模块,用于接收终端发送的更新请求,所述更新请求包括:待更新文件的当前 版本号和目标版本号;
[0011] 选取模块,用于若预设的数据库中存在与所述当前版本号和所述目标版本号关联 的增量包集合,从所述增量包集合中选取大小最小的增量包作为目标增量包;其中,所述增 量包集合中包括至少两个增量包,每个增量包使用的增量更新算法类型不相同;
[0012] 返回模块,用于向所述终端返回更新响应,所述更新响应包括所述目标增量包和 所述目标增量包使用的增量更新算法类型。
[0013] 相应的,本发明实施例还提供了一种文件的更新方法,包括:
[0014] 终端获取待更新文件的当前版本号和目标版本号,并向服务器发送更新请求;其 中,所述更新请求包括所述当前版本号和所述目标版本号;
[0015] 所述终端接收所述服务器根据所述当前版本号和所述目标版本号返回的更新响 应,所述更新响应包括目标增量包和所述目标增量包使用的增量更新算法类型;
[0016] 所述终端根据所述目标增量包将所述待更新文件由所述当前版本号更新至所述 目标版本号。
[0017] 相应的,本发明实施例还提供了一种终端,包括:
[0018] 发送模块,用于获取待更新文件的当前版本号和目标版本号,并向服务器发送更 新请求;其中,所述更新请求包括所述当前版本号和所述目标版本号;
[0019] 接收模块,用于接收所述服务器根据所述当前版本号和所述目标版本号返回的更 新响应,所述更新响应包括目标增量包和所述目标增量包使用的增量更新算法类型;
[0020] 合成模块,用于根据所述目标增量包将所述待更新文件由所述当前版本号更新至 所述目标版本号。
[0021] 实施本发明实施例,具有如下有益效果:
[0022] 服务器根据终端上待更新文件的当前版本号和目标版本号,查询数据库中是否存 在于当前版本号和目标版本号关联的增量包集合,增量包集合中包括至少两个增量包,每 个增量包使用的增量更新算法类型不相同,服务器从关联的增量包集合中选择大小最小的 增量包作为目标增量包,服务器将目标增量包和目标增量包使用的增量更新算法类型通知 给终端,W使终端根据应用目标增量包和其使用的增量更新算法类型合成目标版本号的文 件。该样,服务器通过牺牲时间和空间资源,选取满足终端需求的大小最小的目标增量包, W节省终端的流量消耗和下载时间。
【附图说明】
[0023] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可W 根据该些附图获得其他的附图。
[0024] 图1是本发明第一实施例提供的一种文件的更新方法的流程示意图;
[0025] 图2是本发明第二实施例提供的一种文件的更新方法的流程示意图;
[0026] 图3是本发明第H实施例提供的一种文件的更新方法的流程示意图;
[0027] 图4是本发明第四实施例提供的一种文件的更新方法的流程示意图;
[0028] 图5是本发明第五实施例提供的一种文件的更新方法的流程示意图;
[0029] 图6是本发明第一实施例提供的一种服务器的结构示意图;
[0030] 图7是本发明第二实施例提供的一种服务器的结构示意图;
[00引]图8是图7中选取模块的结构示意图;
[0032] 图9是本发明第一实施例提供的一种终端的结构示意图;
[0033] 图10是本发明第二实施例提供的一种终端的结构示意图。
【具体实施方式】
[0034] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[003引本发明实施例中,终端可W为PC(PersonalComputer,个人计算机)、笔记本电脑、 手机、PAD(平板电脑)、智能可穿戴设备、车载终端等。
[0036] 参见图1,为本发明第一实施例提供的一种文件的更新方法的流程示意图,在本发 明实施例中,所述方法包括:
[0037] S101、服务器接收终端发送的更新请求,所述更新请求包括;待更新文件的当前版 本号和目标版本号。
[0038] 具体的,待更新文件可W是音频文件、视频文件、文本文件或程序安装文件等。终 端获取本地的待更新文件的当前版本号,通过对比服务器发布的待更新文件的版本号判断 是否需要更新,服务器发布的版本号包括待更新文件所有的版本号。如果终端上的待更新 文件需要更新,终端向服务器发送更新请求,更新请求用于将终端上的待更新文件由当前 版本号更新到目标版本号,目标版本号要高于当前版本号。在实际的应用场景中,目标版本 号可W为待更新文件在服务器发布的最高版本号。
[0039] S102、若预设的数据库中存在与所述当前版本号和所述目标版本号关联的增量包 集合,从所述增量包集合中选取大小最小的增量包作为目标增量包;其中,所述增量包集合 中包括至少两个增量包,每个增量包使用的增量更新算法类型不同。
[0040] 具体的,预设的数据库中存储有多个增量包集合,每个增量包集合关联有低版本 号和高版本号,每个增量包集合中包括至少两个增量包,增量包为服务器根据低版本号 的文件和高版本号的文件采用增量更新算法得到的,增量包使用增量更新算法类型包括 Hdiff、BSDiff、Exsdiff和bzip2中的任意一种,每个增量包使用的增量更新算法类型不相 同。服务器根据待更新文件的当前版本号和目标版本号为查询关键字查询预设的数据库中 是否存在关联的增量包集合,若存在,服务器从关联的增量包集合中选取大小最小的目标 增量包。
[0041] 可W看出,服务器从增量包集合中选取大小最小的目标增量包,终端更新本地的 待更新文件时所需的流量最少,在相同的下载速度下,所需的下载时间也最短。
[0042] S103、所述服务器向所述终端返回更新响应,所述更新响应包括所述目标增量更 新包和所述目
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1