【技术实现步骤摘要】
离线下载的系统及方法
本专利技术涉及一种互联网技术,特别是涉及一种离线下载的系统及方法。
技术介绍
云端订阅下载,又称为离线下载,本质是下载工具的服务器代替用户先行下载。比如某个资源是冷门资源,下载速度很慢,用户就得下载很久,如果用户使用离线下载技术,就可以让服务商的服务器代替用户下载,用户就可以关掉下载工具或者机器,节约时间和电费。等到离线下载好后,用户再从下载工具的服务器上高速下载到客户端的电脑上。离线下载能省却许多挂机等待的时间,最重要的是能够腾出电脑宽带做其他的事情。以服务器高速代理下载,中转到离线空间,再以用户从离线下载服务器下载到本机的方式提供网络加速服务的离线下载获得了广泛的应用。云端订阅的一般步骤为:用户提交需要下载的文件下载地址;离线任务管理服务器接受用户提交的订阅请求;离线任务管理服务器收到请求后先查询数据库的映射记录,检测服务器端是否已经有下载或者下载完成的对应文件,如果有就直接通知客户端,客户端可以直接从服务器云端下载,同时使用P2SP(点对服务器和点)技术,如果没有合适的文件在服务端匹配到,就将离线下载任务请求发送到离线任务分发服务器;离线任务分发服务器依据下载链接Hash(把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值)的首字节区间进行离线任务的调度,离线下载服务器集群依据URL(Uniform/UniversalResourceLocator,统一资源定位符,也被称为网页地址)开始启动下载,从因特网下载数据;下载完成的数据同时同步到云存储服务器,同时将下载结果写入数据库。在一般云端订阅下载系统中 ...
【技术保护点】
一种离线下载的系统,其特征在于,包括:下载服务器集群,所述下载服务器集群包括两个以上下载服务器,所述下载服务器根据其负载反馈负载信息及根据离线任务从互联网中获取数据信息;分发服务器,获得所述离线任务,所述分发服务器与所述下载服务器集群通信,接收所述负载信息并根据所述负载信息生成调度规则,所述分发服务器根据所述调度规则将所述离线任务分发给所述下载服务器;及存储服务器,与所述下载服务器集群通信连接,用于存储所述下载服务器集群获得的所述数据信息,并提供所述数据信息的下载。
【技术特征摘要】
1.一种离线下载的系统,其特征在于,包括:下载服务器集群,所述下载服务器集群包括两个以上下载服务器,所述下载服务器根据其负载反馈负载信息及根据离线任务从互联网中获取数据信息;分发服务器,获得所述离线任务,所述分发服务器与所述下载服务器集群通信,接收所述负载信息并根据所述负载信息生成调度规则,所述分发服务器根据所述调度规则将所述离线任务分发给所述下载服务器;及存储服务器,与所述下载服务器集群通信连接,用于存储所述下载服务器集群获得的所述数据信息,并提供所述数据信息的下载;所述调度规则包括:基于Hash号段,按照下载服务器的能力比率进行调度,在下载服务器的分配比率设置为0时,不再调度任务到该下载服务器进行下载;所述分发服务器包括:过滤模块,将所述离线任务与已经存在的离线任务进行比较,将已经存在的所述离线任务过滤,同一个离线任务只向下载服务器集群发送一次离线任务下载请求,同一个离线任务只发送给一个下载服务器;负载调度模块,接收所述负载信息,并根据所述负载信息生成调度规则,所述负载调度模块维护包含所述下载服务器的信息的链表及所述调度规则;及任务分发模块,根据所述调度规则及所述链表中的信息,将所述离线任务分发给所述下载服务器;所述负载调度模块管理下载服务器的心跳、注销及接收下载服务器的负载信息,接收到心跳包时,查询是否有下载服务器信息,若没有则新插入一个下载服务器信息,并比较新的负载信息是否与原来的负载信息不同,若不同则置标记,并使用双缓冲区的实现方式把下载服务器的信息传给任务分发模块,当负载调度模块把数据写入第一块缓冲区时,任务分发模块读第二块缓冲区的数据,当负载调度模块写完后,任务分发模块开始读第一块缓冲区的数据,负载调度模块转而把数据写入第二块缓冲区;所述负载调度模块在更新时,将下载服务器信息集合中所有数据写入缓冲区中,并在缓冲区中置标记来通知任务分发模块读取数据,所述更新的时机包括:下载服务器的负载信息出现过载信息、下载服务器注销、以及清理完心跳包超时的下载服务器后进行检查的检查结果需要更新。2.如权利要求1所述的离线下载的系统,其特征在于,还包括:离线任务数据库,存储所述离线任务的原始连接,所述下载服务器集群与所述离线任务数据库通信连接,并从所述离线任务数据库获取所述离线任务的原始链接,所述下载服务器集群将与下载完成的离线任务对应的数据信息的入口地址写入所述离线任务数据库,并生成映射记录;及离线任务管理器,与所述离线任务数据库及所述分发服务器通信连接,所述离线任务管理器通过所述映射记录判断所述离线任务是否下载完成,若是,则直接提供所述数据信息,否则,为所述离线任务生成唯一编号,且将其原始链接连同所述编号写入所述离线任务数据库,并将所述离线任务提交给所述分发服务器。3.如权利要求1所述的离线下载的系统,其特征在于,所述下载服务器根据下载协议分为相应类型,所述分发服务器包括任务分类模块,所述任务分类模块将所述离线任务根据下载协议分发给对应类型的所述下载服务器。4.如权利要求1所述的离线下载的系统,其特征在于,所述负载信息包括CPU负载、磁盘负载、内存负载、并行队列长度及等待队列长度,所述调度规则为与所述下载服务器的实时负载成反比例分配所述离线任务,所述实时负载如下式:F=a*CPU负载+b*磁盘负载+c*内存负载+d...
【专利技术属性】
技术研发人员:刘刚,庄庆,
申请(专利权)人:深圳市腾讯计算机系统有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。