文件传输方法和装置及服务器系统的利记博彩app

文档序号:8459159阅读:547来源:国知局
文件传输方法和装置及服务器系统的利记博彩app
【技术领域】
[0001] 本申请涉及网络通信技术领域,特别涉及一种文件传输方法和装置及服务器系 统。
【背景技术】
[0002] 在网络通信技术领域中,服务器和用户终端之间经常进行文件的上传和下载。比 如,用户通过手机或电脑将图片、音频文件、视频文件或文本资料上传至服务器,或者通过 手机或电脑下载存储在服务器中的图片、音频文件、视频文件或文本资料。
[0003] 在用户终端和服务器之间上传或下载文件时,会利用断点续传技术。现有技术中, 断点续传技术会将文件划分成若干固定大小的数据块。文件传输过程中,可以有多个线程, 每个线程上传或下载一个数据块,当一个文件的全部数据块上传或下载结束后,重新再合 成形成文件。在文件进行上传或下载的过程中,可能因网络连接问题而出现传输失败的情 况。比如在传输过程中网络连接中断,这会导致正在传输的数据块传输失败,在网络恢复之 后,会从网络中断时传输失败的数据块处继续传输,而无需将文件的全部数据块重新再次 传输。
[0004] 请参阅图1,在此举例为用户终端采用Http协议向服务器上传文件,文件的名称 为"Test, jpg",文件大小为1500字节,将100字节作为一个数据块,这样一共有15个数据 块。用户终端向服务器发出Request请求,在一个Request请求中会包含文件名称"Test, jpg",内容范围"〇~99/1500"以及当前数据块。其中,内容范围中的"0~99"表示"字节 起始地址~字节结束地址"," 1500"表示文件的总字节数,当前数据块的字节为"字节起始 地址~字节结束地址"对应的字节。服务器端接收一个Request请求后,会返回给用户终端 一个Response,即响应信息。在Response中会包括一个状态码。如果成功接收Request请 求的内容,且当前数据块不是所述文件的最后一个数据块,则状态码为206,表示用户终端 可以继续传输;若当前数据块是所述文件的最后一个数据块,则状态码为200,告知用户终 端的文件上传成功结束。
[0005] 现有的断点续传技术,在开始数据传输之前,按照固定的规则对文件划分数据块, 每个数据块包含的字节数量是固定的。对于用户终端如手机,存在使用Wifi上网和使用 2G上网的网络速度区别。这样,若所述数据块包含的字节数量较多,则用户使用2G上网上 传或下载文件时,由于网络速度较慢,使得进度条需要较长的时间才能够出现变化,用户无 法及时了解传输进度,导致用户体验较差。如果迎合用户使用2G上网的需要,将所述数据 块包括较少的字节数量,则当用户使用Wif i上网且网络速度较快时,网络资源又无法得到 充分利用,即用户终端每次发送一个Request请求之后,都需要等待服务器端的Response。 所述数据块包含的字节数越少,则一个文件划分的数据块越多,相应的,在传输一个文件过 程中,用户终端需要越多的时间在等待服务器的Response。再者,由于使用2G上网和使用 Wifi上网,网络速度往往相差较大,使得难以确定合适的数据块大小能够兼顾两者的需求。

【发明内容】

[0006] 本申请实施方式的目的是提供一种文件传输方法和装置及服务器系统,以使得传 输过程与实际网络速度尽量匹配。
[0007] 为解决上述技术问题,本申请提供一种文件传输方法,包括:
[0008] 从待传输文件分割出一个或一个以上第一数据块;
[0009] 依照网络协议将所述一个或一个以上第一数据块发往预定地址;
[0010] 根据所述一个或一个以上第一数据块发往所述预定地址所用的时间计算当前网 速;
[0011] 从待传输文件的剩余部分分割出一个或一个以上第二数据块,根据所述当前网速 确定所述第二数据块的字节数量;
[0012] 依照网络协议将所述一个或一个以上第二数据块发往所述预定地址。
[0013] 本申请还提供一种文件传输装置,包括:
[0014] 第一数据分块模块,用于从待传输文件分割出一个或一个以上第一数据块;
[0015] 第一发送模块,用于依照网络协议将所述一个或一个以上第一数据块发往预定地 址;
[0016] 速度计算模块,用于根据所述一个或一个以上第一数据块发往所述预定地址所用 的时间计算当前网速;
[0017] 分块确认模块,用于根据所述当前网速确定第二数据块的字节数量;
[0018] 第二数据分块模块,用于从待传输文件的剩余部分分割出一个或一个以上第二数 据块;
[0019] 第二发送模块,用于依照网络协议将所述一个或一个以上第二数据块发往所述预 定地址。
[0020] 本申请还提供一种服务器系统,包括:
[0021] 第一数据分块模块,用于从待传输文件分割出一个或一个以上第一数据块;
[0022] 第一发送模块,用于依照网络协议将所述一个或一个以上第一数据块发往预定地 址;
[0023] 速度计算模块,用于根据所述一个或一个以上第一数据块发往所述预定地址所用 的时间计算当前网速;
[0024] 分块确认模块,用于根据所述当前网速确定第二数据块的字节数量;
[0025] 第二数据分块模块,用于从待传输文件的剩余部分分割出一个或一个以上第二数 据块;
[0026] 第二发送模块,用于依照网络协议将所述一个或一个以上第二数据块发往所述预 定地址。
[0027] 由以上本申请实施方式提供的技术方案可见,本申请实现动态调整数据块的大 小,进而能够满足用户的使用需求。在网络速度较快时,本申请能够增大数据块包括的字节 数量,从而减少了等待预定地址的响应时间,整体缩短了文件的发送时间;在网络速度较慢 时,能够减少数据块包括的字节数量,使文件发送的进度条能够呈现给用户一个连续的进 度状态,提供给用户较佳的使用体验。综上,本申请的技术方案能够兼顾网速较快的网络如 Wifi网络,和网速较慢的网络如2G网络的使用需求。
【附图说明】
[0028] 为了更清楚地说明本申请实施方式或现有技术中的技术方案,下面将对实施方式 或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅 是本申请中记载的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性 的前提下,还可以根据这些附图获得其他的附图。
[0029] 图1为现有技术中断点续传技术的示意图;
[0030] 图2为本申请一个实施方式提供的文件传输装置的模块图;
[0031] 图3为本申请一个实施方式提供的文件传输方法的流程图;
[0032] 图4为本申请一个实施方式提供的速度计算模块的模块图;
[0033] 图5为本申请一个实施方式提供的计算当前网速的流程图;
[0034] 图6为本申请一个实施方式提供的分块确认模块的模块图;
[0035] 图7为本申请一个实施方式提供的确认第二数据块的字节数量的流程图;
[0036] 图8为本申请一个实施方式提供的分块确认模块的模块图;
[0037] 图9为本申请一个实施方式提供的服务器系统的模块图;
[0038] 图10为本申请一个实施方式提供的服务器系统的流程图。
【具体实施方式】
[0039] 本申请实施方式提供一种文件传输方法和装置及服务器系统。
[0040] 为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实 施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的 实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方 式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都应 当属于本申请保护的范围。
[0041] 请参阅图2,为本申请的一个实施方式提供的文件传输装置100。
[0042] 文件传输装置100可以为任意的用户终端,也可以为服务器,还可以为服务器系 统。用户终端可以为任意形式的移动终端如手机、平板电脑或笔记本电脑,也可以为台式电 脑。服务器可以为实现本申请功能的硬件,也可以为记录在硬件上的逻辑体。服务器系统 可以由若干的服务器组成。
[0043] 在场景为用户通过用户终端向服务器上传文件时,用户终端为文件传输装置100, 文件传输装置100向服务器发送文件的过程,即为向服务器上传文件的过程。在场景为用 户通过用户终端从服务器下载文件时,服务器为文件传输装置100,文
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1