一种服务器数据访问的响应方法以及相关方法和相关装置与流程

文档序号:16007690发布日期:2018-11-20 20:16阅读:314来源:国知局

本申请涉及计算机技术领域,特别涉及一种服务器数据访问的响应方法、服务器数据访问方法、服务器数据访问的响应装置、服务器数据访问装置、服务器以及计算机可读存储介质。



背景技术:

随着互联网技术的不断发展,使用互联网的用户越来越多,在互联网中存储的数据也就越来越多,所以发展出存储专用服务器,用于存储静态数据和动态数据。

但是,存储专用服务器一般的管理软件只支持单点的服务器结构,也就是只有一个服务器用于存储数据。并且在应用的环境中没有条件部署独立的服务器来对静态数据进行分流存储。当多人并发访问时,或者下载大文件时多个客户端集中对一个服务器的静态文件进行访问,而单个服务器很难对静态文件的访问进行负载均衡处理,使得服务器系统资源被大量占用,造成响应速度慢或者服务不可用的情况。

因此,如何降低客户端访问服务器时的资源占用率是本领域技术人员关注的重点问题。



技术实现要素:

本申请的目的是提供一种服务器数据访问的响应方法、服务器数据访问方法、服务器数据访问的响应装置、服务器数据访问装置、服务器以及计算机可读存储介质,通过将待访问数据上传至P2P网络,通过P2P网络获取访问数据,降低服务器带宽占用率,提高服务器性能。

为解决上述技术问题,本申请提供一种服务器数据访问的响应方法,包括:

服务器接收浏览器发送的访问请求;

根据所述访问请求确定待访问数据对应的P2P网络地址;其中,所述P2P网络地址是对所述待访问数据进行P2P网络上传处理得到的;

将所述P2P网络地址发送至所述浏览器,以使所述浏览器根据所述P2P网络地址从所述P2P网络获取所述待访问数据。

可选的,根据所述访问请求确定待访问数据对应的P2P网络地址;其中,所述P2P网络地址是对所述待访问数据进行P2P网络上传处理得到的,包括:

所述服务器根据所述访问请求判断所述待访问数据是否被上传至所述P2P网络;

若是,则根据所述访问请求确定待访问数据对应的P2P网络地址;其中,所述P2P网络地址是对所述待访问数据进行P2P网络上传处理得到的。

可选的,根据所述访问请求确定待访问数据对应的P2P网络地址;其中,所述P2P网络地址是对所述待访问数据进行P2P网络上传处理得到的,包括:

所述服务器根据所述访问请求判断所述待访问数据是否为静态数据;

若是,则根据所述访问请求确定待访问数据对应的P2P网络地址;其中,所述P2P网络地址是对所述待访问数据进行P2P网络上传处理得到的。

可选的,对所述待访问数据进行P2P网络上传处理得到所述P2P网络地址,包括:

所述服务器对所述待访问数据进行ID计算处理,得到ID;

将所述ID和所述待访问数据上传至所述P2P网络中,得到IP地址;

将所述ID和所述IP地址作为所述P2P网络地址。

本申请还提供一种服务器数据访问方法,包括:

浏览器向服务器发送访问请求,以使所述服务器向所述浏览器发送所述待访问数据的P2P网络地址;其中,所述P2P网络地址是所述服务器对所述待访问数据进行P2P网络上传处理得到的;

接收所述服务器发送的P2P网络地址,并根据所述P2P网络地址从所述P2P网络获取所述待访问数据。

可选的,所述服务器对所述待访问数据进行P2P网络上传处理得到所述P2P网络地址,包括:

所述服务器对所述待访问数据进行ID计算处理,得到ID;

将所述ID和所述待访问数据上传至所述P2P网络中,得到IP地址;

将所述ID和所述IP地址作为所述P2P网络地址。

可选的,所述服务器向所述浏览器发送所述待访问数据的P2P网络地址,包括:

所述服务器根据接收到的所述访问请求判断所述待访问数据是否被上传至所述P2P网络;

若是,则将所述待访问数据对应的所述P2P网络地址进行发送。

可选的,所述服务器向所述浏览器发送所述待访问数据的P2P网络地址,包括:

所述服务器根据所述访问请求判断所述待访问数据是否为静态数据;

若是,则将所述待访问数据对应的所述P2P网络地址进行发送。

本申请还提供一种服务器数据访问的响应装置,包括:

访问请求接收模块,用于服务器接收浏览器发送的访问请求;

网络地址确定模块,用于根据所述访问请求确定待访问数据对应的P2P网络地址;其中,所述P2P网络地址是对所述待访问数据进行P2P网络上传处理得到的;

网络地址发送模块,用于将所述P2P网络地址发送至所述浏览器,以使所述浏览器根据所述P2P网络地址从所述P2P网络获取所述待访问数据。

本申请还提供一种服务器数据访问装置,包括:

访问请求发送模块,用于浏览器向服务器发送访问请求,以使所述服务器向所述浏览器发送所述待访问数据的P2P网络地址;其中,所述P2P网络地址是所述服务器对所述待访问数据进行P2P网络上传处理得到的;

待访问数据获取模块,用于接收所述服务器发送的P2P网络地址,并根据所述P2P网络地址从所述P2P网络获取所述待访问数据。

本申请还提供一种服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上所述的响应方法和/或服务器数据访问方法的步骤。

本申请还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的响应方法和/或服务器数据访问方法的步骤。

本申请所提供的一种服务器数据访问的响应方法,包括:服务器接收浏览器发送的访问请求;根据所述访问请求确定待访问数据对应的P2P网络地址;其中,所述P2P网络地址是对所述待访问数据进行P2P网络上传处理得到的;将所述P2P网络地址发送至所述浏览器,以使所述浏览器根据所述P2P网络地址从所述P2P网络获取所述待访问数据。

通过服务器将被访问的数据上传至P2P网络中,浏览器向服务器请求数据时,服务器只需要发送P2P网络地址,使浏览器从P2P网络中获取访问的数据,由于P2P网络地址的大小相比实际的文件数据的大小,对服务器处理性能和带宽大小影响较小,可以有效的降低客户端请求数据时对服务器的资源占用率,避免响应速度慢或服务不可用的情况。

本申请还提供一种服务器数据访问方法、服务器数据访问的响应装置、服务器数据访问装置、服务器以及计算机可读存储介质,具有上述有益效果,在此不做赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例所提供的一种服务器数据访问的响应方法的流程图;

图2为本申请实施例所提供的一种服务器数据访问方法的流程图;

图3为本申请实施例所提供的一种交互方法的流程图;

图4为本申请实施例提供的一种服务器数据访问的响应装置的结构示意图;

图5为本申请实施例提供的一种服务器数据访问装置的结构示意图。

具体实施方式

本申请的核心是提供一种服务器数据访问的响应方法、服务器数据访问方法、服务器数据访问的响应装置、服务器数据访问装置、服务器以及计算机可读存储介质,通过将待访问数据上传至P2P网络,通过P2P网络获取访问数据,降低服务器带宽占用率,提高服务器性能。

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

针对现有技术中服务器结构只能进行单点控制,也就是只有一个服务器用于存储数据,并且没有条件部署独立的服务器来对流量进行分流操作的情况。在现有技术中,当多人并发访问时,或者下载大文件时多个客户端集中对一个服务器的静态文件进行访问,而单个服务器很难对静态文件的访问进行负载均衡处理,使得服务器系统资源被大量占用,造成响应速度慢或者服务不可用的情况。

因此,本申请提供一种实施例,服务器通过将被访问的数据上传至P2P网络中,浏览器向服务器请求数据时,服务器只需要发送P2P网络地址,使浏览器从P2P网络中获取访问的数据,由于P2P网络地址的大小相比实际的文件数据的大小,对服务器处理性能和带宽大小影响较小,可以有效的降低客户端请求数据时对服务器的资源占用率,避免响应速度慢或服务不可用的情况。

具体的,请参考图1,图1为本申请实施例所提供的一种服务器数据访问的响应方法的流程图。

该方法可以包括:

S101,服务器接收浏览器发送的访问请求;

本步骤旨在通过服务器接收浏览器发送的访问请求,其中,访问请求是指浏览器访问服务器中的资源的请求,因此访问请求所要获取的数据也叫做待访问数据。

在现有技术中,服务器通常接收到浏览器发送的访问请求后直接返回对应的数据,此时如果在多并发状态下,服务器直接返回相应的数据,使得服务器系统资源被大量占用,造成响应速度慢或者服务不可用的情况。因此,提供以下步骤以解决该问题。

S102,根据访问请求确定待访问数据对应的P2P网络地址;其中,P2P网络地址是对待访问数据进行P2P网络上传处理得到的;

在步骤S101的基础上,本步骤旨在确定访问请求访问的待访问数据的P2P网络地址。

其中,该P2P网络地址是对待访问数据进行P2P网络上传处理得到的。也就是服务器会预先将服务器中存储的被访问数据进行P2P网络上传处理,进而得到可以下载该待访问数据的P2P网络地址。由于服务器需要将多个待访问数据进行上传,因此服务器保存了多个P2P网络地址,所以本步骤中需要根据访问请求确定对应的P2P网络地址。

此外,本步骤中通过的P2P网络上传处理,具体的就是服务器对待访问数据进行上传一种处理,处理方式可以采用现有技术提供的任意一种P2P网络上传方式,也可以一下提供的处理方法:

步骤一,服务器对待访问数据进行ID计算处理,得到ID;

本处理方式,具体通过kad协议处理待访问数据,根据kad协议,需要对待访问数据进行ID计算处理,得到可以标识该待访问数据的ID。

步骤二,将ID和待访问数据上传至P2P网络中,得到IP地址;

在步骤一的基础上,本步骤旨在讲ID和待访问数据上传至P2P网络中,进而可得到可以获取待访问数据的IP地址。一般的得到一个IP地址就可以获取到待访问数据,但是会出现该存储的节点数据发生损坏的情况,因此步骤二中可以获取多个IP地址,例如获取三个IP地址。当通过IP地址获取待访问数据时,可以从所有IP地址都获取待访问数据,也可以任选其中之一的IP地址获取待访问数据。

步骤三,将ID和IP地址作为P2P网络地址。

在步骤二的基础上,本步骤主要是将得到的ID和IP地址作为P2P网络地址。

此外,在本实施例在执行之前还包括将服务器作为P2P网络中的普通节点加入到P2P网络中。

S103,将P2P网络地址发送至浏览器,以使浏览器根据P2P网络地址从P2P网络获取待访问数据。

在步骤S102的基础上,本步骤旨在将上一步骤得到的P2P网络地址发送至浏览器处,可以使得浏览器根据该P2P网络地址从P2P网络中获取到该待访问数据。也就是,当浏览器向服务器获取数据时,服务器可以只返回P2P网络地址,而不是真正的数据,而P2P网络地址的大小十分小,占用服务器的带宽大小,进而减少当多并发时,对服务器的影响,提高服务器资源的利用率。

需要说明的是,在更具体的应用环境中,可以不是所有访问请求对应的待访问数据都被上传至P2P网络,也就是并非所有访问请求均返回P2P网络地址。

因此,可以提供以下可选方案,判断对该访问请求是否返回P2P网络地址。

可选的,本实施例中的S102可以包括:

服务器根据访问请求判断待访问数据是否被上传至P2P网络;

若是,则根据访问请求确定待访问数据对应的P2P网络地址;其中,P2P网络地址是对待访问数据进行P2P网络上传处理得到的。

本可选方案主要是判断访问请求对应的待访问数据是否被上传至P2P网络中,也就是判断待访问数据是否在P2P网络中。如果,该待访问数据在P2P网络中,那么就进行后续的步骤。

可选的,本实施例中的S102也可以包括:

服务器根据访问请求判断待访问数据是否为静态数据;

若是,则根据访问请求确定待访问数据对应的P2P网络地址;其中,P2P网络地址是对待访问数据进行P2P网络上传处理得到的。

在本可选方案中,通过判断待访问数据是否为静态数据,判定是否确定P2P网络地址。在实际的服务器传输数据中,静态数据占比较大,并且单个静态数据也比较大,因此,本可选方案中判断该待访问数据是否为静态数据,如果是静态数据则确定该静态数据对应的P2P网络地址,也可以合理分配服务器传输带宽,将数据量较大的静态数据通过P2P网络保存,其他数据通过服务器传输。

综上,本实施例通过将被访问的数据上传至P2P网络中,浏览器向服务器请求数据时,服务器只需要发送P2P网络地址,使浏览器从P2P网络中获取访问的数据,由于P2P网络地址的大小相比实际的文件数据的大小,对服务器处理性能和带宽大小影响较小,可以有效的降低客户端请求数据时对服务器的资源占用率,避免响应速度慢或服务不可用的情况。

以上实施例是在服务器的角度进行说明,以下基于以上实施例,在浏览器的角度再提供一个实施例。

具体的,请参考图2,图2为本申请实施例所提供的一种服务器数据访问方法的流程图。

该方法可以包括:

S201,浏览器向服务器发送访问请求,以使服务器向浏览器发送待访问数据的P2P网络地址;其中,P2P网络地址是服务器对待访问数据进行P2P网络上传处理得到的;

S202,接收服务器发送的P2P网络地址,并根据P2P网络地址从P2P网络获取待访问数据。

通过步骤S201和步骤S202,浏览器获取待访问数据的过程,就不是直接从服务器获取到实际的数据,而是从服务获取到P2P网络地址,通过P2P网络获取到实际浏览器需要的访问的数据,而P2P网络地址的大小较小,可以降低带宽的占用率。

其中,本实施例执行的P2P网络上传处理,是将待访问数据上传至P2P网络的处理,可以采用现有提供的任意一种上传处理方式,也可以采用以下方式:

步骤一,服务器对待访问数据进行ID计算处理,得到ID;

本处理方式,具体通过kad协议处理待访问数据,根据kad协议,需要对待访问数据进行ID计算处理,得到可以标识该待访问数据的ID。

步骤二,将ID和待访问数据上传至P2P网络中,得到IP地址;

在步骤一的基础上,本步骤旨在讲ID和待访问数据上传至P2P网络中,进而可得到可以获取待访问数据的IP地址。一般的得到一个IP地址就可以获取到待访问数据,但是会出现该存储的节点数据发生损坏的情况,因此步骤二中可以获取多个IP地址,例如获取三个IP地址。当通过IP地址获取待访问数据时,可以从所有IP地址都获取待访问数据,也可以任选其中之一的IP地址获取待访问数据。

步骤三,将ID和IP地址作为P2P网络地址。

在步骤二的基础上,本步骤主要是将得到的ID和IP地址作为P2P网络地址。

此外,在本实施例在执行之前还包括将服务器作为P2P网络中的普通节点加入到P2P网络中。

需要说明的是,在更具体的应用环境中,可以不是所有访问请求对应的待访问数据都被上传至P2P网络,也就是并非所有访问请求均返回P2P网络地址。

因此,可以提供以下可选方案,判断对该访问请求是否返回P2P网络地址。

可选的,本实施例中的S201可以包括:

服务器根据接收到的访问请求判断待访问数据是否被上传至P2P网络;

若是,则将待访问数据对应的P2P网络地址进行发送。

本可选方案主要是判断访问请求对应的待访问数据是否被上传至P2P网络中,也就是判断待访问数据是否在P2P网络中。如果该待访问数据在P2P网络中,那么就执行后续的步骤。

可选的,本实施例中的S201可以包括:

服务器根据访问请求判断待访问数据是否为静态数据;

若是,则将待访问数据对应的P2P网络地址进行发送。

在本可选方案中,通过判断待访问数据是否为静态数据,判定是否确定P2P网络地址。在实际的服务器传输数据中,静态数据占比较大,并且单个静态数据也比较大,因此,本可选方案中判断该待访问数据是否为静态数据,如果是静态数据则发送该静态数据对应的P2P网络地址,也可以合理分配服务器传输带宽,将数据量较大的静态数据通过P2P网络保存,其他数据通过服务器传输。

综上,本实施例通过获取到P2P网络地址,浏览器获取待访问数据的过程,就不是直接从服务器获取到实际的数据,而是从服务获取到P2P网络地址,通过P2P网络获取到实际浏览器需要的访问的数据,而P2P网络地址的大小较小,可以降低带宽的占用率。

基于以上所有实施例,还可以提供的一个实施例,在服务器和浏览器两端进行说明。

请参考图3,图3为本申请实施例所提供的一种交互方法的流程图。

需要说明的是,本方法需要在管理软件的web服务器内部实现一个P2P(点对点传输)的协议代理;同时需要编写一个JS模块来实现用户浏览器端在P2P网络中的资源下载,以及下载成功后刷新浏览器显示区域。

该方法包括:

步骤S301,web(网页)服务器启动的时候,P2P代理会让web服务器作为P2P网络的一个普通节点加入到P2P网络,具体的是emule(电驴,一种P2P软件)中Kad(协议名称)协议的bootstrap(报文名称)报文。

步骤S302,web服务器把要发布的图片,生成一个KadID(这是emule的P2P网络必须的ID),然后把该ID和图片发布到P2P网络中,同时在内存中记录下图片和ID的关系。

步骤S303,客户端通过http(超文本传输协议)协议访问图片。

步骤S304,管理软件webserver(网页服务器)发现图片被缓存到P2P网络中,从而返回给浏览器一个重定向的结果,同时附上对象的ID值和保存了该对象的P2P节点的IP列表(保存对象的份数一般是3份)。

步骤S305,浏览器根据对象ID,和自选的一个IP地址,去P2P网络中下载图片资源。下载成功后,JS(JavaScript,一种直译式脚本语言)再刷新要显示的区域

本实施例通过借用P2P网络的分布式存储能力,把管理软件的静态文件,发布到P2P网络中,用户可以去P2P网络中下载文件,降低了对管理软件服务器的压力,提高了管理软件的可用性和性能。虽然还有对管理软件服务器有一次访问,但客户端并没有下载任何大的图片、文件,相比直接下载,返回一个ID和IP列表,对服务器的CPU(中央处理器)和IO(输入输出)压力还是小了很多。所以P2P的缓存效率还是很高的。

下面对本申请实施例提供的一种服务器数据访问的响应装置进行介绍,下文描述的一种服务器数据访问的响应装置与上文描述的一种服务器数据访问的响应方法可相互对应参照。

请参考图4,图4为本申请实施例提供的一种服务器数据访问的响应装置的结构示意图。

该装置可以包括:

访问请求接收模块110,用于服务器接收浏览器发送的访问请求;

网络地址确定模块120,用于根据访问请求确定待访问数据对应的P2P网络地址;其中,P2P网络地址是对待访问数据进行P2P网络上传处理得到的;

网络地址发送模块130,用于将P2P网络地址发送至浏览器,以使浏览器根据P2P网络地址从P2P网络获取待访问数据。

下面对本申请实施例提供的一种服务器数据访问装置进行介绍,下文描述的一种服务器数据访问装置与上文描述的一种服务器数据访问方法可相互对应参照。

请参考图5,图5为本申请实施例提供的一种服务器数据访问装置的结构示意图。

该装置可以包括:

访问请求发送模块210,用于浏览器向服务器发送访问请求,以使服务器向浏览器发送待访问数据的P2P网络地址;其中,P2P网络地址是服务器对待访问数据进行P2P网络上传处理得到的;

220,用于接收服务器发送的P2P网络地址,并根据P2P网络地址从P2P网络获取待访问数据。

本申请实施例还提供一种服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如以上实施例的响应方法和/或服务器数据访问方法的步骤。

本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如以上实施例的响应方法和/或服务器数据访问方法的步骤。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的一种服务器数据访问的响应方法、服务器数据访问方法、服务器数据访问的响应装置、服务器数据访问装置、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1