CN104144186B - 云计算环境中基于Web浏览器的数据上传方法与系统 - Google Patents
云计算环境中基于Web浏览器的数据上传方法与系统 Download PDFInfo
- Publication number
- CN104144186B CN104144186B CN201310170241.6A CN201310170241A CN104144186B CN 104144186 B CN104144186 B CN 104144186B CN 201310170241 A CN201310170241 A CN 201310170241A CN 104144186 B CN104144186 B CN 104144186B
- Authority
- CN
- China
- Prior art keywords
- data
- uploaded
- cloud server
- cloud
- web browser
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种云计算环境中基于Web浏览器的数据上传方法与系统。该方法包括:云终端Web浏览器向云服务器发送上传数据的传输参数请求消息;云服务器确定数据传输类型信息、数据分片大小信息;云终端Web浏览器根据数据传输类型信息,对待上传数据进行预处理,划分具有数据分片大小的数据分片;云终端Web浏览器向云服务器并行发送数据分片以及数据分片对应的分片序号标识;云服务器获得全部数据分片的分片序号标识;对全部数据分片进行重组,获得待上传数据。通过本发明所提供的技术方案,能够实现数据处理负载向云终端下移,缓解云服务器的压力,以及提高云终端与云服务器之间的数据上传效率。
Description
技术领域
本发明涉及云计算通信领域,特别涉及一种云计算环境中基于Web浏览器的数据上传方法与系统。
背景技术
近年来,云计算通信发展迅速,越来越多用户使用云终端通过通信网络获得云计算服务器提供的服务。现有技术中,用户可以使用基于云客户端的云终端接入云软件,这种方式需要使用专门的云客户端,然而对于大多数的用户,使用Web浏览器更符合用户的使用习惯。同时,多数通信网络应用依然基于客户端浏览器来实现的,不仅因为使用浏览器更符合用户的使用习惯,而且B/S结构下,主要维护工作集中在服务端,能够实现集中维护,维护工作量小。
随着Html 5的成熟及Web应用的深入,大量云终端数据需要通过Web浏览器上传到云服务器。基于Web的云计算应用,其核心技术在于传输效率和良好的用户体验。
传统的基于Web的数据传输方式通常有两种,一种数据传输方式是由云终端将Web数据一次性提交到云服务端进行统一处理,该方式所传输的数据为原始数据。由于被上传的数据处理负载均由服务端承担,因此,这种方式对服务端资源消耗较大。此外,这种采用这种方式进行数据传输,通常传输过程基于一次请求而完成,由于终端或者通信网络缺乏稳定性,传输效率得不到保障,可能导致出错从而需要对数据进行多次全部重传。
发明内容
根据本发明实施例的一个方面,所要解决的一个技术问题是:提供一种云计算环境中基于Web浏览器的数据上传方法与系统,缓解云服务器的压力以及提高云终端与云服务器之间的数据上传效率。
本发明实施例提供的一种云计算环境中基于Web浏览器的数据上传方法,所述方法包括:
云终端Web浏览器向云服务器发送上传数据的传输参数请求消息,所述传输参数请求消息中包含待上传数据的数据大小信息;
云服务器根据处理所述待上传数据的Web应用程序类型,确定待上传数据的数据传输类型信息,并且确定待上传数据的数据分片大小信息;
所述云服务器向所述云终端Web浏览器返回数据处理需求消息,所述数据处理需求消息中包含所述数据传输类型信息、所述数据分片大小信息;
所述云终端Web浏览器根据所述数据传输类型信息,对待上传数据进行预处理;以及将预处理后的待上传数据划分为具有数据分片大小的数据分片,根据预定的分片序号标识规则获得分片序号标识;
所述云终端Web浏览器向所述云服务器采用并发方式,并行发送所述数据分片以及所述数据分片对应的分片序号标识;
所述云服务器根据待上传数据的数据大小信息、数据分片大小信息,以及所述预定的分片序号标识规则获得全部数据分片的分片序号标识;
所述云服务器根据接收到的数据分片以及所述数据分片对应的分片序号标识,识别是否已接收全部数据分片的分片序号标识;
响应于已接收全部数据分片的分片序号标识,所述云服务器对全部数据分片进行重组,获得待上传数据。
优选地,所述云服务器接收所述传输参数请求消息后,所述方法还包括:确定所述待上传数据的处理状态,所述处理状态包括新上传状态、断点续传状态与上传完毕状态;
响应于所述处理状态为新上传状态,所述云服务器执行所述确定待上传数据的数据传输类型信息,以及数据分片大小信息的操作;所述数据处理需求信息中还包含待上传数据的所述方法还包括:待上传数据的处理状态信息为新上传状态;
响应于所述处理状态为断点续传状态,云服务器根据已接收的数据分片,确定断点续传信息;云服务器向云终端Web浏览器返回数据处理需求消息,数据处理需求消息中包含待上传数据的处理状态信息以及断点续传信息,处理状态信息为断点续传状态;云终端Web浏览器根据断点续传信息以及数据传输类型信息、对待续传数据进行预处理后,执行所述并行发送所述数据分片以及所述数据分片对应的分片序号标识的操作;
响应于所述处理状态为上传完成状态,所述云服务器向所述云终端Web浏览器返回数据处理完毕的指示消息,以结束后续操作执行。
优选地,所述确定待上传数据的数据分片大小信息,具体包括:
根据所述数据大小信息以及所述云服务器当前忙闲状态,确定待上传数据的数据分片大小信息;
所述云服务器当前忙闲状态包括:云服务器当前可处理最大连接数和/或云服务器资源占用情况。
优选地,所述云终端Web浏览器根据所述数据传输类型信息,对待上传数据进行预处理,具体包括:
所述云终端Web浏览器根据所述数据传输类型信息,采用对应的编码方法进行对待上传数据进行编码;
所述云服务器获得待上传数据,具体包括:
所述云服务器根据所述根据数据传输类型信息,采用与所述编码方法对应的解码方法,解码重组后的全部数据分片,获得待上传数据。
优选地,所述方法还包括:
所述云服务器接收到单个数据分片后,识别接收的数据分片大小是否与所述数据大小一致;
若一致,所述云服务器将数据分片存入数据库,向云终端Web浏览器返回接收成功消息;否则返回接收失败消息;
所述云终端Web浏览器若接收到数据成功消息,结束所述单个数据分片发送操作;若接收到接收失败消息,调用重传机制重发所述单个数据分片。
优选地,所述云终端Web浏览器通过客户端脚本划分数据分片,以及通过异步JavaScript和可扩展标记语言AJAX实现与云服务端之间的数据交互。
本发明实施例提供的一种云计算环境中基于Web浏览器的数据上传系统,所述系统包括:
云终端Web浏览器,用于向云服务器发送上传数据的传输参数请求消息,所述传输参数请求消息中包含待上传数据的数据大小信息;根据云服务器返回的数据传输类型信息,对待上传数据进行预处理;以及将预处理后的待上传数据划分为具有数据分片大小的数据分片,根据预定的分片序号标识规则获得分片序号标识;向所述云服务器采用并发方式,并行发送所述数据分片以及所述数据分片对应的分片序号标识;
云服务器,用于根据处理所述待上传数据的Web应用程序类型,确定待上传数据的数据传输类型信息,并且确定待上传数据的数据分片大小信息;向所述云终端Web浏览器返回数据处理需求消息,所述数据处理需求消息中包含所述数据传输类型信息、所述数据分片大小信息;并行接收数据分片,根据待上传数据的数据大小信息、数据分片大小信息,以及所述预定的分片序号标识规则获得全部数据分片的分片序号标识;根据接收到的数据分片以及所述数据分片对应的分片序号标识,识别是否已接收全部数据分片的分片序号标识;响应于已接收全部数据分片的分片序号标识,所述云服务器对全部数据分片进行重组,获得待上传数据。
优选地,所述云服务器,还用于在接收所述传输参数请求消息后,识别所述待上传数据的处理状态,所述处理状态包括新上传状态、断点续传状态与上传完毕状态;
响应于所述处理状态为新上传状态或者断点续传状态,所述数据处理需求信息中还包含待上传数据的所述方法还包括:待上传数据的处理状态信息,分别为新上传或者断点续传;
所述云服务器,还用于响应于所述处理状态为上传完毕状态,向所述云终端Web浏览器返回数据处理完毕的指示消息,以结束后续操作执行。
优选地,所述云服务器,具体用于根据所述数据大小信息以及所述云服务器当前忙闲状态,确定待上传数据的数据分片大小信息;
所述云服务器当前忙闲状态包括:云服务器当前可处理最大连接数和/或云服务器资源占用情况。
优选地,所述云终端Web浏览器,具体用于根据所述数据传输类型信息,采用对应的编码方法进行对待上传数据进行编码;
所述云服务器,还用于根据所述根据数据传输类型信息,采用与所述编码方法对应的解码方法,解码重组后的全部数据分片,获得待上传数据。
优选地,所述云服务器,还用于接收到单个数据分片后,识别接收的数据分片大小是否与所述数据大小一致;若一致,将数据分片存入数据库,向云终端Web浏览器返回接收成功消息;否则返回接收失败消息;
所述云终端Web浏览器,还用于若接收到数据成功消息,结束所述单个数据分片发送操作;若接收到接收失败消息,调用重传机制重发所述单个数据分片。
优选地,所述云终端Web浏览器通过客户端脚本划分数据分片,以及通过AJAX实现与云服务端之间的数据交互。
通过本发明上述实施例提供的云计算环境中基于Web浏览器的数据上传方法与系统,云终端Web浏览器根据云服务器返回的数据处理需求消息,对待上传数据进行预处理,从而实现数据处理负载向云终端下移,缓解云服务器的压力。基于云终端Web浏览器对待上传数据进行数据分片,云终端并发地发送小尺寸的数据分片,提供了数据的发送效率。同时,云服务器接收数据分片,避免云服务器处理大尺寸数据带来的超时响应,提高云服务器的接收效率,从而提高云终端与云服务器之间的数据上传效率。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
构成说明书的一部分的附图描述了本发明的实施例,并且连同说明书一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1示出本发明所提供的云计算环境中基于Web浏览器的数据上传方法一种实施例的流程示意图;
图2示出本发明所提供的云计算环境中基于Web浏览器的数据上传方法一种实施例的流程示意图;
图3示出本发明所提供的云计算环境中云服务器处理方法一种实施例的流程示意图;
图4示出本发明所提供的云计算环境中云终端Web浏览器处理方法一种实施例的流程示意图;
图5示出本发明所提供的云计算环境中基于Web浏览器的数据上传系统一种实施例的结构示意图;
图6示出本发明所提供的云计算环境中基于Web浏览器的数据上传系统一种实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
参见图1所示,图1示出本发明所提供的云计算环境中基于Web浏览器的数据上传方法一种实施例的流程示意图。该实施例提供的云计算环境中基于Web浏览器的数据上传方法包括以下操作:
101,云终端Web浏览器向云服务器发送上传数据的传输参数请求消息,传输参数请求消息中包含待上传数据的数据大小信息;
102,云服务器根据处理待上传数据的Web应用程序类型,确定待上传数据的数据传输类型信息,并且确定待上传数据的数据分片大小信息;
103,云服务器向云终端Web浏览器返回数据处理需求消息,数据处理需求消息中包含数据传输类型信息、数据分片大小信息;数据传输类型示例性地,可以是文本或二进制流;
104,云终端Web浏览器根据数据传输类型信息,对待上传数据进行预处理;以及将预处理后的待上传数据划分为具有数据分片大小的数据分片,根据预定的分片序号标识规则获得分片序号标识;
105,云终端Web浏览器向云服务器采用并发方式,并行发送数据分片以及数据分片对应的分片序号标识;
106,云服务器根据待上传数据的数据大小信息、数据分片大小信息,以及预定的分片序号标识规则获得全部数据分片的分片序号标识;
107,云服务器根据接收到的数据分片以及数据分片对应的分片序号标识,识别是否已接收全部数据分片的分片序号标识;
108,响应于已接收全部数据分片的分片序号标识,云服务器对全部数据分片进行重组,获得待上传数据。
本发明上述实施例提供的方法,基于Web浏览器的数据上传方法与系统,云终端Web浏览器根据云服务器返回的数据处理需求消息,对待上传数据进行预处理,从而实现数据处理负载向云终端下移,缓解云服务器的压力。基于云终端Web浏览器对待上传数据进行数据分片,云终端并发地发送小尺寸的数据分片,提供了数据的发送效率。同时,云服务器接收数据分片,避免云服务器处理大尺寸数据带来的超时响应,提高云服务器的效率,从而提高云终端与云服务器之间的数据上传效率。
参见图2所示,图2示出本发明所提供的云计算环境中基于Web浏览器的数据上传方法一种实施例的流程示意图。该实施例中,云服务器接收传输参数请求消息后,该方法还包括:
201,云服务器确定待上传数据的处理状态,处理状态包括新上传状态、断点续传状态与上传完毕状态;响应于处理状态为新上传状态,执行202至203的操作;响应于处理状态为断点续传状态,执行204-206的操作;响应于处理状态为上传完成状态,执行207的操作;
202,云服务器根据处理待上传数据的Web应用程序类型,确定待上传数据的数据传输类型信息,以及数据分片大小信息;
203,云服务器向云终端Web浏览器返回数据处理需求消息,数据处理需求消息中包含数据传输类型信息、数据分片大小信息、待上传数据的处理状态信息,处理状态信息为新上传状态;
204,云服务器根据已接收的数据分片,确定断点续传信息;
205,云服务器向云终端Web浏览器返回数据处理需求消息,数据处理需求消息中包含待上传数据的处理状态信息以及断点续传信息,处理状态信息为断点续传状态;
206,云终端Web浏览器根据断点续传信息以及数据传输类型信息、对待续传数据进行预处理;
207,云服务器向云终端Web浏览器返回数据处理完毕的指示消息,以结束后续操作执行。
通过上述实施例实现了数据断点续传,在终端或者通信网络缺乏稳定性,传输效率得不到保障的情况下,通过并发地断点续传能够提高Web数据传输效率。
根据本发明方法实施例的一个具体示例,云服务器可以根据数据大小信息以及云服务器当前忙闲状态,确定待上传数据的数据分片大小信息;云服务器当前忙闲状态包括:云服务器当前可处理最大连接数和/或云服务器资源占用情况。例如,当云服务器当前可处理最大连接数越多,或者云服务器资源占用越低,则说明云服务器越空闲,因此能够处理数据分片更大的数据分片,此时可以确定使用较大的数据分片大小。
根据本发明方法实施例的一个具体示例,云终端Web浏览器根据数据传输类型信息,对待上传数据进行预处理,具体可以包括:云终端Web浏览器根据数据传输类型信息,采用对应的编码方法进行对待上传数据进行编码。在图1中108云服务器对全部数据分片进行重组之后,云服务器根据数据传输类型信息,采用与编码方法对应的解码方法,解码重组后的全部数据分片,获得待上传数据。预处理还可以包括对数据分片的加密操作,对应地,云服务器执行解密操作。
根据本发明方法实施例的一个具体示例,该方法还包括:云服务器接收到单个数据分片后,识别接收的数据分片大小是否与数据大小一致;若一致,云服务器将数据分片存入数据库,向云终端Web浏览器返回接收成功消息;否则返回接收失败消息;云终端Web浏览器若接收到数据成功消息,结束单个数据分片发送操作;若接收到接收失败消息,调用重传机制重发单个数据分片。
在该实施例中,通过数据接收成功消息确认或者在失败后调用重发机制,保证Web数据传输的可靠性。
另外,还可以设定超时判断与错误捕捉机制。例如,当云终端Web浏览器重发预定次数后,在设定的时限内未接收到成功消息或者失败消息,则强制结束数据重发,通过错误捕捉机制获得错误的原因。
示例性地,云终端Web浏览器可以通过客户端脚本,例如Javascript或者VBScript),划分数据分片。云终端Web浏览器通过异步Javascrip和可扩展标记语言(Asynchronous JavaScript and XML,AJAX)实现与云服务端之间的数据交互。同时,可以通过调用JQuery、ExtJS中封装好的方法进行超时判断与错误捕捉。JQuery与ExtJS为与后台技术无关的前端AJAX框架。云终端Web浏览器可以通过XMLHttpRequest方法向云服务器并发上传数据分片。
作为一种实现方式,可以在云服务端编写供云终端Web浏览器调用的脚本代码,以及配置服务器数据处理页面,无需云终端进行调整,易于部署和维护。由于无效安装专用的第三方插件,用户体验好,并且具有较好的兼容性。
参见图3所示,图3示出本发明所提供的云计算环境中云服务器处理方法一种实施例的流程示意图。
S1步骤:接收云终端Web浏览器发送的传输参数请求消息;
S2步骤:确定待上传数据的数据传输类型信息(Form)、数据分片大小信息(Size),在一种实施例中,还确定数据的处理状态(Status),返回数据处理需求消息;该数据处理需求消息可以为结构化数组response[];
其中,云服务器根据数据分片的分片序号标识(Id)以及已接收的数据分片,确定断点续传信息,断点续传信息可以是已传输的分片序号标识列表(oId);根据Web应用程序返回数据传输类型(Form);
S3步骤:采用多线程方式,并发接收数据分片;
S4步骤:判断是否接收成功,是则进入S6,否则返回S5;
S5步骤:向云终端Web浏览器返回接收失败消息,继续执行S3;
S6步骤:向云终端Web浏览器返回接收成功消息;
S7步骤:根据分片序号标识,判断是否已接收全部数据分片的分片,是则进入S8,否则进入S3;
S8步骤:根据分片序号标识,对全部数据分片进行重组,获得待上传数据。
其中,云服务端操作可以由Web服务和Web应用程序实现。由于接收数据分片可以是并发多线程操作,因此,S3-S6可以为分线程流程,其余为主线程流程。
参见图4所示,图4示出本发明所提供的云计算环境中云终端Web浏览器处理方法一种实施例的流程示意图。
B1步骤:云终端Web浏览器向云服务器发送上传数据的传输参数请求消息,以请求获得上传数据的数据传输类型信息(Form)、数据分片大小信息(Size)等信息,同时,向云服务器上报待上传数据的大小;
B2步骤:等待运方服务器返回信息;
B3步骤:识别云服务器返回的消息,即结构化数组response[];
B4步骤:识别数据的处理状态(Status),如果Status是OK,则该消息为数据处理完毕的指示消息,该数据已经传输完毕,进入B6结束后续操作的执行;如果Status是新上传状态(New)该数据未传输,则进入B4;如果Status是断点续传状态(Resume),判断该数据需断点续传,则进入B5;
B4步骤:根据数据传输类型(Form)调用编码方法对Web数据进行预处理,以及根据数据分片大小信息(Size)对数据进行分片;
B5步骤:根据断点续传信息,用一个字符数组IsSend[]记录返回的包含已接收数据单元序列号列表(oId),组织断点续传,其中IsSend[]中记录的数据分片不再传输;
B6步骤:结束后续操作的执行;
B7步骤:发送数据分片;
B8步骤:遍历IsSend[]数组大小识别是否成功发送数据分片,是则传输完成,否则继续B7;
其中,本流程中云终端Web浏览器可以使用AJAX技术,构造HTTP请求,利用POST方法发送数据。由于发送数据分片是并发多线程操作,B7和B8为分线程流程,其余为主线程流程。
参见图5所示,图5示出本发明所提供的云计算环境中基于Web浏览器的数据上传系统一种实施例的结构示意图。该实施例提供的云计算环境中基于Web浏览器的数据上传系统,包括:
云终端Web浏览器501,用于向云服务器发送上传数据的传输参数请求消息,传输参数请求消息中包含待上传数据的数据大小信息;根据云服务器返回的数据传输类型信息,对待上传数据进行预处理;以及将预处理后的待上传数据划分为具有数据分片大小的数据分片,根据预定的分片序号标识规则获得分片序号标识;向云服务器采用并发方式,并行发送数据分片以及数据分片对应的分片序号标识;
云服务器502,用于根据处理待上传数据的Web应用程序类型,确定待上传数据的数据传输类型信息,并且确定待上传数据的数据分片大小信息;向云终端Web浏览器返回数据处理需求消息,数据处理需求消息中包含数据传输类型信息、数据分片大小信息;并行接收数据分片,根据待上传数据的数据大小信息、数据分片大小信息,以及预定的分片序号标识规则获得全部数据分片的分片序号标识;根据接收到的数据分片以及数据分片对应的分片序号标识,识别是否已接收全部数据分片的分片序号标识;响应于已接收全部数据分片的分片序号标识,云服务器对全部数据分片进行重组,获得待上传数据。
根据本发明系统实施例的一个具体示例,云服务器502还用于在接收传输参数请求消息后,确定待上传数据的处理状态,处理状态包括新上传状态、断点续传状态与上传完毕状态。
云服务器502,还用于响应于处理状态为新上传状态,执行确定待上传数据的数据传输类型信息,以及数据分片大小信息的操作;数据处理需求信息中还包含待上传数据的方法还包括:待上传数据的处理状态信息为新上传状态;响应于处理状态为断点续传状态,根据已接收的数据分片,确定断点续传信息;向云终端Web浏览器返回数据处理需求消息,数据处理需求消息中包含待上传数据的处理状态信息以及断点续传信息,处理状态信息为断点续传状态;响应于处理状态为上传完成状态,向云终端Web浏览器返回数据处理完毕的指示消息,以结束后续操作执行。
云终端Web浏览器501,还用于根据断点续传信息以及数据传输类型信息、对待续传数据进行预处理后,执行并行发送数据分片以及数据分片对应的分片序号标识的操作。
根据本发明方法实施例的一个具体示例,云服务器502具体用于根据数据大小信息以及云服务器当前忙闲状态,确定待上传数据的数据分片大小信息;云服务器当前忙闲状态包括:云服务器当前可处理最大连接数和/或云服务器资源占用情况。
根据本发明方法实施例的一个具体示例,云终端Web浏览器501具体用于:根据数据传输类型信息,采用对应的编码方法进行对待上传数据进行编码;云服务器502,还用于根据数据传输类型信息,采用与编码方法对应的解码方法,解码重组后的全部数据分片,获得待上传数据。
根据本发明方法实施例的一个具体示例,云服务器502,还用于接收到单个数据分片后,识别接收的数据分片大小是否与数据大小一致;若一致,将数据分片存入数据库,向云终端Web浏览器返回接收成功消息;否则返回接收失败消息;云终端Web浏览器501,还用于若接收到数据成功消息,结束单个数据分片发送操作;若接收到接收失败消息,调用重传机制重发单个数据分片。
根据本发明方法实施例的一个具体示例,云终端Web浏览器501可以通过客户端脚本划分数据分片。云终端Web浏览器501通过AJAX实现与云服务端之间的数据交互。同时,可以通过调用JQuery、ExtJS中封装好的方法进行超时判断与错误捕捉。
参见图6所示,图6示出本发明所提供的云计算环境中基于Web浏览器的数据上传系统一种实施例的结构示意图。云终端Web浏览器与云服务器之间可以通过HTTP协议或者HTTPS协议进行数据传输控制信息交互。云终端Web浏览器对待上传数据进行预处理,包括利用云终端Web浏览器调用客户端脚本实现对待上传数据的数据分片,在完成预处理之后再上传至云服务器,避免云服务器处理大数据量的Web请求时出现超时响应,提高云服务器的效率。
通过本发明所提供的方法和系统,能够基于Web实现数据处理负载向云终端下移,缓解云服务器的压力。
通过数据断点续传机制,提高Web数据传输效率;
通过数据重发机制,保证Web数据传输的稳定性;
通过在云服务端编写供云终端Web浏览器调用的脚本代码,以及配置服务器数据处理页面,不需云终端作出调整,对用户来说是透明的,易于部署和维护,符合用户使用习惯;
本发明所提供的方法和系统可应用于与云计算有关的网络应用环境,基于各种Web浏览器的数据传输至云服务端。
至此,已经详细描述了根据本发明的一种云计算环境中基于Web浏览器的数据上传方法与系统。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于云计算环境中基于Web浏览器的数据上传系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的云计算环境中基于Web浏览器的数据上传方法与系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的云计算环境中基于Web浏览器的数据上传方法与系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。
Claims (12)
1.一种云计算环境中基于Web浏览器的数据上传方法,其特征在于,所述方法包括:
云终端Web浏览器向云服务器发送上传数据的传输参数请求消息,所述传输参数请求消息中包含待上传数据的数据大小信息;
云服务器根据处理所述待上传数据的Web应用程序类型,确定待上传数据的数据传输类型信息,并且确定待上传数据的数据分片大小信息;
所述云服务器向所述云终端Web浏览器返回数据处理需求消息,所述数据处理需求消息中包含所述数据传输类型信息、所述数据分片大小信息;
所述云终端Web浏览器根据所述数据传输类型信息,对待上传数据进行预处理;以及将预处理后的待上传数据划分为具有数据分片大小的数据分片,根据预定的分片序号标识规则获得分片序号标识;
所述云终端Web浏览器向所述云服务器采用并发方式,并行发送所述数据分片以及所述数据分片对应的分片序号标识;
所述云服务器根据待上传数据的数据大小信息、数据分片大小信息,以及所述预定的分片序号标识规则获得全部数据分片的分片序号标识;
所述云服务器根据接收到的数据分片以及所述数据分片对应的分片序号标识,识别是否已接收全部数据分片的分片序号标识;
响应于已接收全部数据分片的分片序号标识,所述云服务器对全部数据分片进行重组,获得待上传数据。
2.根据权利要求1所述的方法,其特征在于,所述云服务器接收所述传输参数请求消息后,所述方法还包括:确定所述待上传数据的处理状态,所述处理状态包括新上传状态、断点续传状态与上传完毕状态;
响应于所述处理状态为新上传状态,所述云服务器执行所述确定待上传数据的数据传输类型信息,以及数据分片大小信息的操作;所述数据处理需求信息中还包含待上传数据的处理状态信息,所述待上传数据的处理状态信息为新上传状态;
响应于所述处理状态为断点续传状态,云服务器根据已接收的数据分片,确定断点续传信息;云服务器向云终端Web浏览器返回数据处理需求消息,数据处理需求消息中包含待上传数据的处理状态信息以及断点续传信息,处理状态信息为断点续传状态;云终端Web浏览器根据断点续传信息以及数据传输类型信息、对待续传数据进行预处理后,执行所述并行发送所述数据分片以及所述数据分片对应的分片序号标识的操作;
响应于所述处理状态为上传完成状态,所述云服务器向所述云终端Web浏览器返回数据处理完毕的指示消息,以结束后续操作执行。
3.根据权利要求1所述的方法,其特征在于,所述确定待上传数据的数据分片大小信息,具体包括:
根据所述数据大小信息以及所述云服务器当前忙闲状态,确定待上传数据的数据分片大小信息;
所述云服务器当前忙闲状态包括:云服务器当前可处理最大连接数和/或云服务器资源占用情况。
4.根据权利要求1所述的方法,其特征在于,所述云终端Web浏览器根据所述数据传输类型信息,对待上传数据进行预处理,具体包括:
所述云终端Web浏览器根据所述数据传输类型信息,采用对应的编码方法进行对待上传数据进行编码;
所述云服务器获得待上传数据,具体包括:
所述云服务器根据所述根据数据传输类型信息,采用与所述编码方法对应的解码方法,解码重组后的全部数据分片,获得待上传数据。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述云服务器接收到单个数据分片后,识别接收的数据分片大小是否与所述数据大小一致;
若一致,所述云服务器将数据分片存入数据库,向云终端Web浏览器返回接收成功消息;否则返回接收失败消息;
所述云终端Web浏览器若接收到数据成功消息,结束所述单个数据分片发送操作;若接收到接收失败消息,调用重传机制重发所述单个数据分片。
6.根据权利要求1至5所述任意一项所述的方法,其特征在于,所述云终端Web浏览器通过客户端脚本划分数据分片,以及通过异步Javascript和可扩展标记语言AJAX实现与云服务端之间的数据交互。
7.一种云计算环境中基于Web浏览器的数据上传系统,其特征在于,所述系统包括:
云终端Web浏览器,用于向云服务器发送上传数据的传输参数请求消息,所述传输参数请求消息中包含待上传数据的数据大小信息;根据云服务器返回的数据传输类型信息,对待上传数据进行预处理;以及将预处理后的待上传数据划分为具有数据分片大小的数据分片,根据预定的分片序号标识规则获得分片序号标识;向所述云服务器采用并发方式,并行发送所述数据分片以及所述数据分片对应的分片序号标识;
云服务器,用于根据处理所述待上传数据的Web应用程序类型,确定待上传数据的数据传输类型信息,并且确定待上传数据的数据分片大小信息;向所述云终端Web浏览器返回数据处理需求消息,所述数据处理需求消息中包含所述数据传输类型信息、所述数据分片大小信息;并行接收数据分片,根据待上传数据的数据大小信息、数据分片大小信息,以及所述预定的分片序号标识规则获得全部数据分片的分片序号标识;根据接收到的数据分片以及所述数据分片对应的分片序号标识,识别是否已接收全部数据分片的分片序号标识;响应于已接收全部数据分片的分片序号标识,所述云服务器对全部数据分片进行重组,获得待上传数据。
8.根据权利要求7所述的系统,其特征在于,所述云服务器,还用于在接收所述传输参数请求消息后,识别所述待上传数据的处理状态,所述处理状态包括新上传状态、断点续传状态与上传完毕状态;
响应于所述处理状态为新上传状态或者断点续传状态,所述数据处理需求信息中还包含待上传数据的处理状态信息,所述待上传数据的处理状态信息分别为新上传或者断点续传;
所述云服务器,还用于响应于所述处理状态为上传完毕状态,向所述云终端Web浏览器返回数据处理完毕的指示消息,以结束后续操作执行。
9.根据权利要求7所述的系统,其特征在于,所述云服务器,具体用于根据所述数据大小信息以及所述云服务器当前忙闲状态,确定待上传数据的数据分片大小信息;
所述云服务器当前忙闲状态包括:云服务器当前可处理最大连接数和/或云服务器资源占用情况。
10.根据权利要求7所述的系统,其特征在于,所述云终端Web浏览器,具体用于根据所述数据传输类型信息,采用对应的编码方法对待上传数据进行编码;
所述云服务器,还用于根据所述根据数据传输类型信息,采用与所述编码方法对应的解码方法,解码重组后的全部数据分片,获得待上传数据。
11.根据权利要求7所述的系统,其特征在于,所述云服务器,还用于接收到单个数据分片后,识别接收的数据分片大小是否与所述数据大小一致;若一致,将数据分片存入数据库,向云终端Web浏览器返回接收成功消息;否则返回接收失败消息;
所述云终端Web浏览器,还用于若接收到数据成功消息,结束所述单个数据分片发送操作;若接收到接收失败消息,调用重传机制重发所述单个数据分片。
12.根据权利要求7至11所述任意一项所述的系统,其特征在于,所述云终端Web浏览器通过客户端脚本划分数据分片,以及通过AJAX实现与云服务端之间的数据交互。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310170241.6A CN104144186B (zh) | 2013-05-10 | 2013-05-10 | 云计算环境中基于Web浏览器的数据上传方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310170241.6A CN104144186B (zh) | 2013-05-10 | 2013-05-10 | 云计算环境中基于Web浏览器的数据上传方法与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104144186A CN104144186A (zh) | 2014-11-12 |
CN104144186B true CN104144186B (zh) | 2017-12-01 |
Family
ID=51853254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310170241.6A Active CN104144186B (zh) | 2013-05-10 | 2013-05-10 | 云计算环境中基于Web浏览器的数据上传方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104144186B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106817391A (zh) * | 2015-12-01 | 2017-06-09 | 百度在线网络技术(北京)有限公司 | 文件断点续传方法和装置 |
CN105871520A (zh) * | 2015-12-31 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 数据传输方法及装置 |
CN106790511A (zh) * | 2016-12-16 | 2017-05-31 | 酷伴科技(北京)有限责任公司 | 一种数据上传方法及系统 |
CN108833200A (zh) * | 2018-05-04 | 2018-11-16 | 佛山科学技术学院 | 一种大数据文件自适应单向传输方法及装置 |
CN110535890B (zh) * | 2018-05-23 | 2022-02-11 | 杭州海康威视系统技术有限公司 | 文件上传的方法和装置 |
CN108924145B (zh) * | 2018-07-16 | 2021-05-04 | 百度在线网络技术(北京)有限公司 | 网络传输方法、装置及设备 |
CN109344131B (zh) * | 2018-10-10 | 2022-03-29 | 国网安徽省电力有限公司信息通信分公司 | 数据存储方法、装置及管理服务器 |
CN109361746A (zh) * | 2018-10-16 | 2019-02-19 | 上海玖悦数码科技有限公司 | 一种物联网的文件传输方法、工牌、及可读存储介质 |
CN109831506A (zh) * | 2019-01-31 | 2019-05-31 | 百度在线网络技术(北京)有限公司 | 文件上传方法、装置、终端、服务器及可读存储介质 |
CN113411363A (zh) * | 2020-03-16 | 2021-09-17 | 华为技术有限公司 | 一种镜像文件的上传方法、相关设备及计算机存储介质 |
CN112153132A (zh) * | 2020-09-18 | 2020-12-29 | 北京浪潮数据技术有限公司 | 基于虚拟化管理平台的文件上传方法、装置及设备 |
CN112422682A (zh) * | 2020-11-18 | 2021-02-26 | 青岛海尔科技有限公司 | 数据发送方法及装置、存储介质、电子装置 |
CN112311902B (zh) * | 2020-12-23 | 2021-05-07 | 深圳市蓝凌软件股份有限公司 | 基于微服务的文件发送方法及装置 |
CN113542418B (zh) * | 2021-07-16 | 2024-03-26 | 厦门雅基软件有限公司 | 文件管理方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222509A (zh) * | 2008-01-22 | 2008-07-16 | 中兴通讯股份有限公司 | 一种点对点网络的数据保护传输方法 |
CN101808095A (zh) * | 2010-03-22 | 2010-08-18 | 华中科技大学 | 一种分布式存储环境下的加密副本组织方法 |
CN102571788A (zh) * | 2011-12-30 | 2012-07-11 | 北京奇虎科技有限公司 | 一种样本收集方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102833294B (zh) * | 2011-06-17 | 2015-05-20 | 阿里巴巴集团控股有限公司 | 基于云存储的文件处理方法、系统及服务器集群系统 |
-
2013
- 2013-05-10 CN CN201310170241.6A patent/CN104144186B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222509A (zh) * | 2008-01-22 | 2008-07-16 | 中兴通讯股份有限公司 | 一种点对点网络的数据保护传输方法 |
CN101808095A (zh) * | 2010-03-22 | 2010-08-18 | 华中科技大学 | 一种分布式存储环境下的加密副本组织方法 |
CN102571788A (zh) * | 2011-12-30 | 2012-07-11 | 北京奇虎科技有限公司 | 一种样本收集方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104144186A (zh) | 2014-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104144186B (zh) | 云计算环境中基于Web浏览器的数据上传方法与系统 | |
US20190349417A1 (en) | Data transmission method and device | |
CN107179697A (zh) | 一种智能家居设备控制方法、装置及系统 | |
CN105930731B (zh) | 一种安全应用ta交互的方法及装置 | |
CN105814591A (zh) | 一种验证信息的传输方法及终端 | |
CN109300217A (zh) | 排队叫号方法、计算机存储介质、排队叫号服务器及系统 | |
CN109274747A (zh) | 行情网关系统及其处理方法 | |
CN109327511A (zh) | 一种基于http协议的数据请求方法和服务器 | |
CN108023922A (zh) | 一种下发及设置配置数据的方法、装置及系统 | |
CN106464556A (zh) | 一种节点入网方法、装置及系统 | |
CN110012008A (zh) | 基于http协议的异构数据源分布式协调一致性方法及系统 | |
CN109189584A (zh) | 应用程序之间的通信方法、装置、电子设备及存储介质 | |
CN108965112A (zh) | 使用即时通讯软件进行文件传输的方法及装置 | |
EP2805474A1 (en) | Method, web server and system for remote control | |
CN103595611B (zh) | 即时通信应用的实现方法及系统、与设备 | |
CN106789561A (zh) | 基于内网服务平台的终端物理地址绑定方法及系统 | |
CN106034141A (zh) | 消息处理方法、资源获取方法、服务器及终端设备 | |
CN103905484A (zh) | 处理超文本传输协议请求的方法及装置 | |
CN103442256B (zh) | 一种基于html5实现电子节目菜单的方法及系统 | |
CN102984272A (zh) | 一种远程控制移动终端通信能力的系统及其方法 | |
CN109672718A (zh) | 系统间的文件传递方法、服务器、存储介质及装置 | |
CN101834894A (zh) | 远程处理方法、装置及系统 | |
CN104468213B (zh) | 一种交换机远程管理系统和方法 | |
CN105429867A (zh) | 一种融合型家庭网关及其应用服务的访问方法 | |
CN103208142A (zh) | 智能门禁系统及信号发射器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |