目标文件分发或下载的方法、装置和系统制造方法及图纸

技术编号:18169326 阅读:38 留言:0更新日期:2018-06-09 13:55
本发明专利技术公开了一种目标文件分发或下载的方法、装置和系统。目标分发方法包括:基于用户的个性化信息,确定适于所述个性化信息的目标文件所包括的文件组件;确定各文件组件在所述目标文件中的组件位置信息;以及响应于来自用户客户端的分块下载请求,基于组件位置信息以及分块下载请求所请求下载的位置范围,确定分块下载请求所请求下载的文件块所在的文件组件,并将所确定的文件组件中对应的文件块数据下发至用户的客户端。由此,通过提供一种高效的文件块数据流式分发/下载方案,使用很少的内存提供文件的下载服务,大幅节约服务器的存储空间和客户端资源,提升用户体验。

【技术实现步骤摘要】
目标文件分发或下载的方法、装置和系统
本专利技术涉及信息
,特别涉及一种目标文件分发或下载的方法、装置、系统、计算设备及存储介质。
技术介绍
随着互联网技术的发展和智能手机等终端设备的普及,人们越来越习惯于从网络上获取各类信息或者文件。针对不同的用户特性、设备类型、分发渠道或者广告标识等特征,用户所请求的同一个目标文件具有不完全相同的版本(例如,适于各种机型的应用APP)。而不同版本的文件之间可能仅存在微小的差异。如果服务器分别存储不同版本的目标文件,那么后台的存储空间会成倍的增加,占用过多的存储空间。如果分别下载目标文件对应的各文件组件而在终端设备上重新组包,又会消耗终端设备大量的CPU资源,并且耗费时间过长,给用户带来很不好的体验。因此,需要一种改善的目标文件分发方案,以解决上述的至少一个问题。
技术实现思路
本专利技术的目的是提供一种目标文件分发或下载的方法、装置和系统,通过提供一种高效的流式分发/下载方案,将用户请求的目标文件对应的文件块数据流式下发至用户客户端,而不需要额外的存储空间,也无需客户端重新进行文件的解压和重组打包,从而大幅节约服务器和客户端的资源,提升用户体验。根据本专利技术的一个方面,提供了一种目标文件分发方法,包括:基于用户的个性化信息,确定适于个性化信息的目标文件所包括的文件组件;确定各文件组件在目标文件中的组件位置信息;以及响应于来自用户客户端的分块下载请求,基于组件位置信息以及分块下载请求所请求下载的位置范围,确定分块下载请求所请求下载的文件块所在的文件组件,并将所确定的文件组件中对应的文件块数据下发至用户的客户端。目标文件以及各文件组件可以优选是ZIP格式的文件。由此,通过将基于个性化信息和分块下载请求的文件块数据直接下发至客户端,提供一种轻型、高效的文件流式下载服务。优选地,确定各文件组件在目标文件中的组件位置信息的步骤可以包括:查找适于个性化信息的第一文件组件和第二文件组件;基于第一文件组件的第一文件信息和第二文件组件的第二文件信息,构建目标文件元信息;以及基于目标文件元信息确定各文件组件在目标文件中的组件位置信息。由此,通过抽象出合理的文件元信息的数据结构,高效地提供流式分发和下载服务。优选地,构建目标文件元信息的步骤可以包括:基于第一文件组件的文件信息,确定在第一文件组件中适于插入第二文件组件的第二文件内容的插入位置;以及基于第一文件组件的第一文件信息、第二文件组件的第二文件信息以及插入位置,构建目标文件元信息。由此,基于各文件组件的信息及其相互关系,实现在第一文件组件中流式插入第二文件组件,从而不需要客户端进行文件的解压和重组打包,节约客户端资源,提升用户体验。优选地,该分发方法还可以包括:对第一文件组件进行预处理操作,预处理操作包括在第一文件组件中添加用以指示插入位置的位置标识。由此,通过添加位置标识,以便于服务器能够快速查找到第二文件组件在第一文件组件中的插入位置,提高文件的分发效率。优选地,第一文件组件可以包括第一文件内容、第一文件索引、第一文件信息,第二文件组件可以包括第二文件内容,目标文件元信息可以包括:第一文件索引在目标文件中的位置;以及/或者第二文件内容在目标文件中的位置,其中,第二文件内容在第一文件内容和第一文件索引之间;以及/或者目标文件索引在目标文件中的位置,其中,目标文件索引在第二文件内容和目标文件的文件信息内容之间;以及/或者目标文件的大小;以及/或者目标文件的文件信息内容。优选地,目标文件索引是根据第一文件索引、第二文件内容以及插入位置构建的。由此,服务器端创新地构建文件元信息,使用很少的内存提供文件的下载服务,是很轻的服务模型。优选地,第一文件组件是所有目标文件都包括的公共文件组件,第二文件组件是针对用户的个性化信息准备的差异化文件组件。由此,通过本专利技术的分发方案,只需在服务器的后台存储空间中存储一份公共文件组件和多份差异化文件组件,而不需要存储全部版本的文件,从而极大地节约服务器的存储空间。优选地,该方法还可以包括:在服务器缓存区中缓存第一文件组件。由此,通过缓存第一文件组件,使得服务器能够快速提供第一文件组件中相应文件块的分发服务,进一步提高分发效率。优选地,该方法还可以包括:与个性化信息关联地存储目标文件元信息。由此,方便服务器根据个性化信息和其相应的目标文件元信息,快速查找到对应的文件组件,完成文件块数据的分发。优选地,确定各文件组件在目标文件中的组件位置信息的步骤包括:查找与个性化信息相对应的目标文件元信息,在查找到目标文件元信息的情况下,根据所查找到的目标文件元信息确定组件位置信息,在未查找到目标文件元信息的情况下,执行基于第一文件组件的第一文件信息和第二文件组件的第二文件信息,构建目标文件元信息的步骤。由此,通过文件元信息的数据结构,高效地提供流式分发、下载。优选地,该方法还可以包括:获取来自客户端的用户信息和/或客户端信息,为用户和/或客户端配置适于用户和/或客户端的个性化信息,个性化信息包括适于客户端的目标文件所包括的文件组件的标识信息。用户信息和/或客户端信息可以包括如下的至少一项:用户ID;客户端的设备类型;用户IP地址。由此,通过根据用户信息或客户端信息做个性化,为客户端配置相适应的文件组件。根据本专利技术的另一方面,还提供了一种目标文件下载方法,包括:向服务器发送目标文件下载请求,下载请求包括用户信息和/或客户端信息;接收服务器基于用户信息和/或客户端信息配置的个性化信息,个性化信息包括适于客户端的目标文件所包括的文件组件的标识信息;向服务器发送个性化信息,以请求分块下载目标文件。根据本专利技术的另一方面,还提供了一种目标文件分发装置,包括:组件确定单元,用于基于用户的个性化信息,确定适于个性化信息的目标文件所包括的文件组件;位置信息确定单元,用于确定各文件组件在目标文件中的组件位置信息;以及分发单元,用于响应于来自用户客户端的分块下载请求,基于组件位置信息以及分块下载请求所请求下载的位置范围,确定分块下载请求所请求下载的文件块所在的文件组件,并将所确定的文件组件中对应的文件块数据下发至用户的客户端。优选地,位置信息确定单元包括:查找单元,用于查找适于个性化信息的第一文件组件和第二文件组件;元信息构建单元,用于基于第一文件组件的第一文件信息和第二文件组件的第二文件信息,构建目标文件元信息,位置信息确定单元基于目标文件元信息确定各文件组件在目标文件中的组件位置信息。优选地,元信息构建单元包括:插入位置确定单元,用于基于第一文件组件的文件信息,确定在第一文件组件中适于插入第二文件组件的第二文件内容的插入位置;以及元信息构建单元,用于基于第一文件组件的第一文件信息、第二文件组件的第二文件信息以及插入位置,构建目标文件元信息。优选地,该装置还可以包括:预处理单元,用于对第一文件组件进行预处理操作,预处理操作包括在第一文件组件中添加用以指示插入位置的位置标识。优选地,第一文件组件包括第一文件内容、第一文件索引、第一文件信息,第二文件组件包括第二文件内容,目标文件元信息包括:第一文件索引在目标文件中的位置;以及/或者第二文件内容在目标文件中的位置,其中,第二文件内容在第一文件内容和第一文件索引之间;以及/或者目标文件索引本文档来自技高网...
目标文件分发或下载的方法、装置和系统

【技术保护点】
一种目标文件分发方法,包括:基于用户的个性化信息,确定适于所述个性化信息的目标文件所包括的文件组件;确定各文件组件在所述目标文件中的组件位置信息;以及响应于来自用户客户端的分块下载请求,基于所述组件位置信息以及所述分块下载请求所请求下载的位置范围,确定所述分块下载请求所请求下载的文件块所在的文件组件,并将所确定的文件组件中对应的文件块数据下发至所述用户的客户端。

【技术特征摘要】
1.一种目标文件分发方法,包括:基于用户的个性化信息,确定适于所述个性化信息的目标文件所包括的文件组件;确定各文件组件在所述目标文件中的组件位置信息;以及响应于来自用户客户端的分块下载请求,基于所述组件位置信息以及所述分块下载请求所请求下载的位置范围,确定所述分块下载请求所请求下载的文件块所在的文件组件,并将所确定的文件组件中对应的文件块数据下发至所述用户的客户端。2.根据权利要求1所述的方法,其中,所述确定各文件组件在所述目标文件中的组件位置信息的步骤包括:查找适于所述个性化信息的第一文件组件和第二文件组件;基于所述第一文件组件的第一文件信息和所述第二文件组件的第二文件信息,构建目标文件元信息;以及基于所述目标文件元信息确定所述各文件组件在所述目标文件中的组件位置信息。3.根据权利要求2所述的方法,其中,所述构建目标文件元信息的步骤包括:基于所述第一文件组件的文件信息,确定在所述第一文件组件中适于插入所述第二文件组件的第二文件内容的插入位置;以及基于所述第一文件组件的第一文件信息、所述第二文件组件的第二文件信息以及所述插入位置,构建目标文件元信息。4.根据权利要求3所述的方法,还包括:对所述第一文件组件进行预处理操作,所述预处理操作包括在第一文件组件中添加用以指示所述插入位置的位置标识。5.根据权利要求3所述的方法,其中,所述第一文件组件包括第一文件内容、第一文件索引、第一文件信息,所述第二文件组件包括第二文件内容,目标文件元信息包括:所述第一文件索引在所述目标文件中的位置;以及/或者所述第二文件内容在所述目标文件中的位置,其中,所述第二文件内容在所述第一文件内容和所述第一文件索引之间;以及/或者目标文件索引在所述目标文件中的位置,其中,所述目标文件索引在所述第二文件内容和目标文件的文件信息内容之间;以及/或者所述目标文件的大小;以及/或者目标文件的文件信息内容。6.根据权利要求5所述的方法,其中,所述目标文件索引是根据所述第一文件索引、所述第二文件内容以及所述插入位置构建的。7.根据权利要求3所述的方法,其中,所述第一文件组件是所有目标文件都包括的公共文件组件,所述第二文件组件是针对用户的个性化信息准备的差异化文件组件。8.根据权利要求7所述的方法,其中,还包括:在服务器缓存区中缓存所述第一文件组件。9.根据权利要求2所述的方法,还包括:与所述个性化信息关联地存储所述目标文件元信息。10.根据权利要求9所述的方法,其中,所述确定各文件组件在所述目标文件中的组件位置信息的步骤包括:查找与所述个性化信息相对应的目标文件元信息,在查找到所述目标文件元信息的情况下,根据所查找到的目标文件元信息确定所述组件位置信息,在未查找到所述目标文件元信息的情况下,执行所述基于所述第一文件组件的第一文件信息和所述第二文件组件的第二文件信息,构建目标文件元信息的步骤。11.根据权利要求1所述的方法,还包括:获取来自客户端的用户信息和/或客户端信息,为所述用户和/或客户端配置适于所述用户和/或客户端的个性化信息,所述个性化信息包括适于所述客户端的目标文件所包括的文件组件的标识信息。12.根据权利要求11所述的方法,其中,所述用户信息和/或客户端信息包括如下的至少一项:用户ID;客户端的设备类型;用户IP地址。13.根据权利要求1-12中任何一项所述的方法,其中,所述目标文件以及所述各文件组件是ZIP格式的文件。14.一种目标文件下载方法,包括:向服务器发送目标文件下载请求,所述下载请求包括用户信息和/或客户端信息;接收所述服务器基于所述用户信息和/或客户端信息配置的个性化信息,所述个性化信息包括适于所述客户端的目标文件所包括的文件组件的标识信息;向服务器发送所述个性化信息,以请求分块下载所述目标文件。15.一种目标文件分发装置,包括:组件确定单元,用于基于用户的个性化信息,确定适于所述个性化信息的目标文件所包括的文件组件;位置信息确定单元,用于确定各文件组件在所述目标文件中的组件位置信息;以及分发单元,用于响应于来自用户客户端的分块下载请求,基于所述组件位置信息以及所述分块下载请求所请求下载的位置范围,确定所述分块下载请求所请求下载的文件块所在的文件组件,并将所确定的文件组件中对应的文件块数据下发至所述用户的客户端。16.根据权利要求15所述的装置,其中,所述位置信息确定...

【专利技术属性】
技术研发人员:徐重峰
申请(专利权)人:广州优视网络科技有限公司
类型:发明
国别省市:广东,44

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

1