一种网络请求的数据缓存方法及数据缓存系统与流程

文档序号:17694479发布日期:2019-05-17 21:21阅读:104来源:国知局
一种网络请求的数据缓存方法及数据缓存系统与流程

本发明涉及网络领域,尤其涉及一种网络请求的数据缓存方法及数据缓存系统。



背景技术:

随着信息网络技术的发展,各种针对不同应用的客户端被相继开发出来。为了提高客户端的性能,通常会在客户端增加数据缓存层或者在服务器上增加数据层。这些客户端从服务器中预先获取数据并且保存到存储器中;当客户端发送数据请求时,客户端会从数据缓存中检索数据并返回对应的数据给客户端。

当然,针对上述数据缓存的传统数据缓存方法主要采用针对数据的预先批处理数据缓存方法和针对数据的实时填充数据缓存方法。例如,当采用预先批处理数据缓存方法时,在客户端开始请求数据之前,将会大批量地填充数据缓存,以尽可能使得批量填充的这些数据能够满足客户端所发送数据请求的需要;当采用实时填充数据缓存方法时,客户端发送数据请求后,需要服务器根据客户端的请求先将这些数据存储到数据缓存中,然后再由客户端从数据缓存中获取到自己所请求的数据。

然而,上述两种传统数据缓存方法仍然存在一些不足之处:预先批处理数据缓存方法,实际上是一种盲目的数据缓存,当客户端需要请求大量数据时,数据缓存不能将所有的数据保存在内存中,并且还会占用大量的内存空间;采用实时填充数据缓存方法时,针对客户端的第一条数据请求会消耗大量响应时间,造成客户端所请求数据的延迟,难以满足客户端所获取数据的实时性。



技术实现要素:

本发明所要解决的首要技术问题是针对上述现有技术提供一种网络请求的数据缓存方法。

本发明所要解决的进一步技术问题是针对上述现有技术提供一种网络请求的数据缓存系统。

本发明解决上述首要技术问题所采用的技术方案为:一种网络请求的数据缓存方法,用于实现客户端与服务器之间的数据通信,其特征在于,包括如下步骤1至步骤5:

步骤1,在客户端与服务器之间增加设置数据缓存装置,以由所述数据缓存装置接收网络上所传输的每一个数据请求信息;其中,所述各数据请求信息具有表征该数据请求信息的url标识;

步骤2,所述数据缓存装置对各数据请求信息的url标识进行拦截并缓存各url标识以及各url标识对应的应答数据到该数据缓存装置中,建立针对已缓存数据请求信息的缓存数据库;其中,所述缓存数据库中的缓存数据包含有各数据请求信息、对应各数据请求信息的url标识以及对应各url标识的应答数据;

步骤3,客户端需要向服务器发送数据请求信息时,客户端发送数据请求信息给所述数据缓存装置,由所述数据缓存装置进行判断:

当客户端所发送当前数据请求信息对应的url标识位于所述缓存数据库中时,所述数据缓存装置将其已缓存的对应当前url标识的应答数据发送给客户端;否则,所述数据缓存装置将客户端所发送的数据请求信息转发给服务器;

步骤4,服务器根据所接收数据缓存装置转发的客户端的数据请求信息,将对应该数据请求信息url标识的应答数据发送给所述数据缓存装置进行缓存;

步骤5,所述数据缓存装置将缓存后的由服务器所发送来的对应应答数据发送给客户端,以实现客户端接收到其所请求的数据。

改进地,在所述网络请求的数据缓存方法中,在服务器更新应答数据时,所述服务器将更新的应答数据以及对应该更新应答数据的url标识发送给数据缓存装置;所述数据缓存装置将其缓存数据库中的应答数据以及对应应答数据的url标识进行更新;在客户端再次请求数据时,所述数据缓存装置将其已更新缓存数据库中且对应该url标识的最新应答数据发送给客户端,以实现数据缓存装置中数据的实时更新。

进一步地,在所述网络请求的数据缓存方法中,针对所述数据缓存装置,所述缓存数据库中的应答数据更新完毕后,所述数据缓存装置将过期的应答数据作删除处理,以节约该数据缓存装置内的缓存空间。

进一步地,在所述网络请求的数据缓存方法中,在所述数据缓存装置中,所述缓存数据库中的缓存数据至少包括音频数据、视频数据、图像数据以及文字数据中的至少一种。

再进一步地,在所述网络请求的数据缓存方法中,所述缓存数据库中具有针对所述不同类型缓存数据的缓存子空间;所述缓存子空间包括音频数据缓存子空间、视频数据缓存子空间、图像数据缓存子空间以及文字数据缓存子空间。

再改进,所述网络请求的数据缓存方法还包括:对所述音频数据、视频数据、图像数据以及文字数据分别赋予不同的缓存优先级;在需要更新所述缓存数据库中的数据时,按照已经赋予的缓存优先级,对所述音频数据、视频数据、图像数据以及文字数据按照先后顺序进行更新和缓存。

进一步改进,所述网络请求的数据缓存方法还包括:所述数据缓存装置对其缓存数据库内各数据被客户端访问的频率进行统计,以获取得到各数据的被访问频率;所述数据缓存装置按照被访问频率的大小顺序,对各数据对应地赋予不同的更新优先级,以将被访问频率大的数据优先进行更新。

本发明解决上述进一步技术问题所采用的技术方案为:一种网络请求的数据缓存系统,包括客户端与服务器,其特征在于,所述数据缓存系统还包括数据缓存装置,所述数据缓存装置分别与客户端和服务器通信连接;其中:

所述客户端,用以发送数据请求信息给数据缓存装置;其中,所述数据请求信息具有表征该数据请求信息的url标识;

所述数据缓存装置,用以接收客户端发送来的数据请求信息、对客户端发送的数据请求信息进行判断、缓存以及转发服务器发送给客户端的应答数据;其中,对客户端发送的数据请求信息进行判断包括:当客户端所发送当前数据请求信息对应的url标识位于所述缓存数据库中时,所述数据缓存装置将其已缓存的对应当前url标识的应答数据发送给客户端;否则,所述数据缓存装置将客户端所发送的数据请求信息转发给服务器;

所述服务器,用以根据数据缓存装置所转发的客户端的数据请求信息,将对应客户端的该数据请求信息url标识的应答数据发送给数据缓存装置处理。

改进地,在所述网络请求的数据缓存系统中,所述数据缓存装置内还具有云端推送装置;其中,所述云端推送装置,用以将所述数据缓存装置内更新后的最新应答数据发送给客户端,以实现数据缓存装置中数据的实时更新。

与现有技术相比,本发明的优点在于:

首先,通过在客户端与服务器之间增加设置数据缓存装置,数据缓存装置接收、缓存网络上所传输的数据请求信息,建立针对已缓存数据请求信息的缓存数据库,且在该缓存数据库中包含有各数据请求信息、对应各数据请求信息的url标识以及对应各url标识的应答数据;数据缓存装置判断客户端所发送数据请求信息的url标识存在于缓存数据库内时,将其已缓存的对应当前url标识的应答数据发送给客户端,避免了传统缓存方法需要由服务器反馈应答数据给客户端造成的延迟;否则,数据缓存装置请求由服务器发送对应该url标识的应答数据给该数据缓存装置,并转发给客户端,以实现客户端接收到其所请求的数据;

其次,在服务器更新应答数据时,通过对数据缓存装置内缓存数据库中的应答数据进行更新,以确保客户端能够实时得到最新的数据;

再次,通过对音频数据、视频数据、图像数据以及文字数据分别赋予不同的缓存优先级;在需要更新缓存数据库中的数据时,按照已经赋予的缓存优先级,对音频数据、视频数据、图像数据以及文字数据按照先后顺序进行更新和缓存,以充分利用网络,提高网络利用率,避免了网速时好时坏对客户端获取数据的不利影响;

数据缓存装置对其缓存数据库内各数据被客户端访问的频率进行统计,以获取得到各数据的被访问频率;并且数据缓存装置按照被访问频率的大小顺序,对各数据对应地赋予不同的更新优先级,以将被访问频率大的数据优先进行更新,提高客户端在服务器获取数据的效率;

最后,在缓存数据库中的应答数据更新完毕后,数据缓存装置将过期的应答数据作删除处理,实现了节约数据缓存装置内的缓存空间。

附图说明

图1为本发明实施例中网络请求的数据缓存方法流程示意图;

图2为本发明实施例中网络请求的数据缓存系统示意图。

具体实施方式

以下结合附图实施例对本发明作进一步详细描述。

如图1所示,本实施例中网络请求的数据缓存方法,用于实现客户端与服务器之间的数据通信,该网络请求的数据缓存方法包括如下步骤1至步骤5:

步骤1,在客户端与服务器之间增加设置数据缓存装置,以由该数据缓存装置接收网络上所传输的每一个数据请求信息;其中,各数据请求信息具有表征该数据请求信息的url标识;其中,url(uniformresourcelocator,缩写为url)标识又称为统一资源定位符;

步骤2,数据缓存装置对各数据请求信息的url标识进行拦截并缓存各url标识以及各url标识对应的应答数据到该数据缓存装置中,建立针对已缓存数据请求信息的缓存数据库;其中,所述缓存数据库中的缓存数据包含有各数据请求信息、对应各数据请求信息的url标识以及对应各url标识的应答数据;

在本实施例中,具体地,在数据缓存装置中,该缓存数据库中的缓存数据至少包括音频数据、视频数据、图像数据以及文字数据中的至少一种;

该缓存数据库中具有针对上述不同类型缓存数据的缓存子空间;例如,缓存子空间包括音频数据缓存子空间、视频数据缓存子空间、图像数据缓存子空间以及文字数据缓存子空间;在音频数据缓存子空间内缓存有音频数据,在视频数据缓存子空间内缓存有视频数据,在图像数据缓存子空间内缓存有图像数据,在文字数据缓存子空间内缓存有文字数据;

步骤3,客户端需要向服务器发送数据请求信息时,客户端发送数据请求信息给数据缓存装置,由数据缓存装置进行判断:

当客户端所发送当前数据请求信息对应的url标识位于缓存数据库中时,数据缓存装置将其已缓存的对应当前url标识的数据发送给客户端;否则,数据缓存装置将客户端所发送的数据请求信息转发给服务器;其中,数据请求信息、url标识以及针对该数据请求信息的数据之间是一一对应地,即每一个针对数据请求信息的数据只有一个url标识与之对应;

步骤4,服务器根据所接收数据缓存装置转发的客户端的数据请求信息,将对应该数据请求信息url标识的应答数据发送给数据缓存装置进行缓存;

步骤5,数据缓存装置将缓存后的由服务器所发送来的对应应答数据发送给客户端,以实现客户端接收到其所请求的数据。

当然,具体到本实施例,在服务器更新应答数据时,服务器首先将更新的应答数据以及对应该更新应答数据的url标识发送给数据缓存装置;然后,数据缓存装置将其缓存数据库中的应答数据以及对应应答数据的url标识进行更新;最后,在客户端再次请求数据时,数据缓存装置将其已更新缓存数据库中且对应该url标识的最新应答数据发送给客户端,以实现数据缓存装置中数据的实时更新。

针对数据缓存装置,缓存数据库中的应答数据更新完毕后,数据缓存装置将过期的应答数据作删除处理,以节约该数据缓存装置内的缓存空间。

另外,考虑到网络速度对数据交互的影响,为了充分利用网络,提高网络利用率,本实施例中网络请求的数据缓存方法还包括:对上述音频数据、视频数据、图像数据以及文字数据分别赋予不同的缓存优先级;在需要更新缓存数据库中的数据时,按照已经赋予的缓存优先级,对音频数据、视频数据、图像数据以及文字数据按照先后顺序进行更新和缓存。

例如,赋予视频数据具有一级缓存优先级,赋予音频数据具有二级缓存优先级,赋予图像数据具有三级缓存优先级,赋予文字数据具有四级缓存优先级,那么,在需要更新缓存数据库中的数据时,按照针对这四类数据已经赋予的缓存优先级,先对视频数据进行缓存,然后对音频数据进行缓存,最对图像数据进行缓存,最后对文字数据进行缓存。这样,一旦网络在最开始的一段时间较好,那么就优先将数据量大的视频数据进行缓存,即便遇到网络不好的时间段时,数据量小的文字数据也可以慢慢进行缓存,这样不会耽误针对上述各数据的整体缓存时间。

当然,该网络请求的数据缓存方法还可以进一步包括:数据缓存装置对其缓存数据库内各数据被客户端访问的频率进行统计,以获取得到各数据的被访问频率;数据缓存装置按照被访问频率的大小顺序,对各数据对应地赋予不同的更新优先级,以将被访问频率大的数据优先进行更新。例如,经统计获取得到文字数据被访问频率最大,图像数据被访问频率次之,音频数据被访问频率第三,视频数据被访问频率最低,那么,就可以先对文字数据进行更新,然后对图像数据进行更新,再对音频数据进行更新,最后对视频数据进行更新。

另外,参见图2所示,本实施例还提供一种网络请求的数据缓存系统,包括客户端、服务器以及数据缓存装置,数据缓存装置分别与客户端和服务器通信连接;其中:

客户端,用以发送数据请求信息给数据缓存装置;其中,数据请求信息具有表征该数据请求信息的url标识;

数据缓存装置,用以接收客户端发送来的数据请求信息、对客户端发送的数据请求信息进行判断、缓存以及转发服务器发送给客户端的应答数据;其中,对客户端发送的数据请求信息进行判断包括:当客户端所发送当前数据请求信息对应的url标识位于缓存数据库中时,数据缓存装置将其已缓存的对应当前url标识的应答数据发送给客户端;否则,数据缓存装置将客户端所发送的数据请求信息转发给服务器;

服务器,用以根据数据缓存装置所转发的客户端的数据请求信息,将对应客户端的该数据请求信息url标识的应答数据发送给数据缓存装置处理。

另外,在数据缓存装置内还可以进一步具有云端推送装置;其中,云端推送装置,用以将数据缓存装置内更新后的最新应答数据发送给客户端,以实现数据缓存装置中数据的实时更新。

尽管以上详细地描述了本发明的优选实施例,但是应该清楚地理解,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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