网站前端的数据缓存系统及方法与流程

文档序号:12364286阅读:377来源:国知局

本发明涉及网站前端技术领域,具体涉及一种网站前端的数据缓存系统及方法。



背景技术:

当前网站前端技术发展迅速,前端业务量逐渐增大,前端需要处理的数据也就越来越多。现有的前端浏览器只能存储字符串数据,不能存储其他类型的数据,网站开发人员每次都得手动将从服务器获取的其他类型数据转换成字符串数据,然后存入浏览器缓存,用的时候再取出来,转换成需要的数据类型。因此,现有的网站前端的数据缓存方法操作繁琐,且效率低下,导致每次从服务器获取数据都存在延迟,用户体验较差。



技术实现要素:

本发明的目的是为了克服上述背景技术的不足,提供一种网站前端的数据缓存系统及方法,本发明能够高效处理前端业务,提高用户体验。

本发明提供一种网站前端的数据缓存系统,该系统与后端的服务器交互,该系统包括控制单元、缓存单元,该系统还包括中间层组件,中间层组件包括多组数据接口,每组数据接口包括设置接口和相应的读取接口,每组数据接口支持一种数据类型,所述数据类型包括基本类型和非基本类型;

所述控制单元用于:存入非基本类型数据时,从服务器获取非基本类型数据,并调用中间层组件中支持非基本类型数据的设置接口;读取非基本类型数据时,调用中间层组件中支持非基本类型的读取接口;存入基本类型数据时,从服务器获取基本类型数据,并调用中间层组件中支持基本类型数据的设置接口;读取基本类型数据时,调用中间层组件中支持基本类型数据的读取接口;

所述中间层组件用于:存入非基本类型数据时,将非基本类型数据转换成字符串数据后,再将所述字符串数据写入缓存单元;读取非基本类型数据时,从缓存单元中取出所述字符串数据,转换成非基本类型数据,返回给控制单元;存入基本类型数据时,直接将所述基本类型数据写入缓存单元;读取基本类型数据时,从缓存单元中取出所述基本类型数据,直接返回给控制单元。

在上述技术方案的基础上,所述基本类型包括字符串类型、整数型、浮点型。

在上述技术方案的基础上,所述非基本类型包括列表类型、哈希类型。

在上述技术方案的基础上,所述非基本类型为列表类型,存入非基本类型数据时,中间层组件将非基本类型数据转换成字符串数据的具体过程为:列表类型数据由多个元素组成,中间层组件将列表类型数据的各个元素取出,然后将每个元素用逗号进行连接,形成字符串数据;

读取非基本类型数据时,中间层组件将字符串数据转换成非基本类型数据的具体过程为:中间层组件从缓存单元中取出字符串数据,先以逗号为分隔符对字符串数据做分解,得到每一个元素,然后将所有元素组合成列表类型数据。

在上述技术方案的基础上,所述非基本类型为哈希类型,存入非基本类型数据时,中间层组件将非基本类型数据转换成字符串数据的具体过程为:哈希类型数据由“键-值”两部分组成,中间层组件依次循环取出每组键值对,然后用冒号将键值对进行组合,再将所有键值对用逗号进行连接,形成字符串数据;

读取非基本类型数据时,中间层组件将字符串数据转换成非基本类型数据的具体过程为:中间层组件从缓存单元中取出字符串数据,先以逗号为分隔符分解字符串数据,得到每一组键值对,再以冒号为分隔符将每一组键值对进行分解,得到每一项键和值,然后将所有键和值合并成哈希类型数据。

本发明提供一种网站前端的数据缓存方法,包括以下步骤:

存入非基本类型数据时,控制单元从服务器获取非基本类型数据,并调用中间层组件中支持非基本类型数据的设置接口,所述支持非基本类型的设置接口将非基本类型数据转换成字符串数据后,再将所述字符串数据写入缓存单元;

读取非基本类型数据时,控制单元调用中间层组件中支持非基本类型的读取接口,所述支持非基本类型的读取接口从缓存单元中取出所述字符串数据,转换成非基本类型数据,返回给控制单元;

存入基本类型数据时,控制单元从服务器获取基本类型数据,并调用中间层组件中支持基本类型数据的设置接口,所述支持基本类型数据的设置接口直接将所述基本类型数据写入缓存单元;

读取基本类型数据时,控制单元调用中间层组件中支持基本类型数据的读取接口,所述支持基本类型数据的读取接口从缓存单元中取出所述基本类型数据,直接返回给控制单元。

在上述技术方案的基础上,所述基本类型包括字符串类型、整数型、浮点型。

在上述技术方案的基础上,所述非基本类型包括列表类型、哈希类型。

在上述技术方案的基础上,所述非基本类型为列表类型,列表类型数据由多个元素组成,存入列表类型数据时,中间层组件将列表类型数据转换成字符串数据的具体过程为:中间层组件将列表类型数据的各个元素取出,然后将每个元素用逗号进行连接,形成字符串数据;

读取列表类型数据时,中间层组件将字符串数据转换成列表类型数据的具体过程为:中间层组件从缓存单元中取出字符串数据,先以逗号为分隔符对字符串数据做分解,得到每一个元素,然后将所有元素组合成列表类型数据。

在上述技术方案的基础上,所述非基本类型为哈希类型,哈希类型数据由“键-值”两部分组成,存入哈希类型数据时,中间层组件将哈希类型数据转换成字符串数据的具体过程为:中间层组件依次循环取出每组键值对,然后用冒号将键值对进行组合,再将所有键值对用逗号进行连接,形成字符串数据;

读取哈希类型数据时,中间层组件将字符串数据转换成哈希类型数据的具体过程为:中间层组件从缓存单元中取出字符串数据,先以逗号为分隔符分解字符串数据,得到每一组键值对,再以冒号为分隔符将每一组键值对进行分解,得到每一项键和值,然后将所有键和值合并成哈希类型数据。

与现有技术相比,本发明的优点如下:

本发明的系统位于网站前端,该系统包括控制单元和缓存单元,缓存单元用于存储浏览器的缓存数据,在控制单元和缓存单元之间建立一个中间层组件,控制单元通过中间层组件存入和读取特定类型的数据,中间层组件用于处理数据类型的转换。需要缓存某种类型数据的时候,通过调用中间层组件的相应设置接口,中间层组件内部把数据类型自动转换为字符串数据,然后写入浏览器缓存。需要读取数据的时候,通过调用中间层组件的相应读取接口,中间层组件从浏览器缓存中取出字符串数据并自动转换成对应的数据类型,返回给控制单元。本发明能够高效处理前端业务,提高用户体验。

附图说明

图1是本发明实施例中数据缓存系统的结构示意图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步的详细描述。

参见图1所示,本发明实施例提供一种网站前端的数据缓存系统,该系统与后端的服务器交互,该系统包括控制单元、缓存单元,缓存单元用于存储浏览器的缓存数据;该系统还包括中间层组件,中间层组件包括多组数据接口,每组数据接口包括一个设置接口和一个相应的读取接口,每组数据接口支持一种数据类型,数据类型包括基本类型和非基本类型,基本类型包括字符串类型、整数型、浮点型,非基本类型包括列表类型、哈希类型;

控制单元用于:存入非基本类型数据时,从服务器获取非基本类型数据,并调用中间层组件中支持非基本类型数据的设置接口;读取非基本类型数据时,调用中间层组件中支持非基本类型的读取接口;存入基本类型数据时,从服务器获取基本类型数据,并调用中间层组件中支持基本类型数据的设置接口;读取基本类型数据时,调用中间层组件中支持基本类型数据的读取接口;

中间层组件用于:存入非基本类型数据时,支持非基本类型数据的设置接口将非基本类型数据转换成字符串数据后,再将该字符串数据写入缓存单元;读取非基本类型数据时,支持非基本类型数据的读取接口从缓存单元中取出该字符串数据,转换成非基本类型数据,返回给控制单元;存入基本类型数据时,支持基本类型数据的设置接口直接将该基本类型数据写入缓存单元;读取基本类型数据时,支持基本类型数据的读取接口从缓存单元中取出该基本类型数据,直接返回给控制单元。

本发明实施例提供一种应用于上述系统的数据缓存方法,包括以下步骤:

存入非基本类型数据时,控制单元从服务器获取非基本类型数据,并调用中间层组件中支持非基本类型数据的设置接口,该设置接口将非基本类型数据转换成字符串数据后,再将该字符串数据写入缓存单元;

读取非基本类型数据时,控制单元调用中间层组件中支持非基本类型的读取接口,该读取接口从缓存单元中取出该字符串数据,转换成非基本类型数据,返回给控制单元;

存入基本类型数据时,控制单元从服务器获取基本类型数据,并调用中间层组件中支持基本类型数据的设置接口,该设置接口直接将该基本类型数据写入缓存单元;

读取基本类型数据时,控制单元调用中间层组件中支持基本类型数据的读取接口,该读取接口从缓存单元中取出该基本类型数据,直接返回给控制单元。

列表类型数据由多个元素组成,例如,列表类型数据的结构为:[x,y,z],包括x,y,z三个元素,当存入的非基本类型数据为列表类型时,中间层组件可以将其各个元素取出,然后将每个元素用逗号进行连接,形成“x,y,z”格式的字符串数据后,将该字符串数据写入浏览器缓存。读取列表类型数据时,控制单元调用中间层组件中支持列表类型数据的读取接口,中间层组件先以逗号为分隔符对缓存的字符串数据做分解,得到每一个元素,然后将所有元素组合成列表类型数据,返回给控制单元。

哈希类型数据由“键-值”两部分组成,例如,哈希类型的结构为:{key:value,key2:value2},包括key:value和key2:value2两组键值对,当存入的非基本类型数据为哈希类型时,中间层组件可以依次循环取出每组键值对,然后用冒号将键值对组合成"key:value"形式,再将所有键值对用逗号进行连接,形成"key:value,key2:value2"格式的字符串数据后,将该字符串数据存入浏览器缓存。读取哈希类型数据时,控制单元调用中间层组件中支持哈希类型数据的读取接口,由于缓存数据的每一组键值对都是用逗号分隔的,所以中间层组件先以逗号为分隔符分解缓存的字符串数据,得到每一组键值对,每一组键值对又是以冒号分隔的,进而中间层组件再以冒号为分隔符分解每一组键值对,得到每一项“键”和“值”,然后将所有合并成哈希类型数据,返回给控制单元。

字符串类型数据结构为为一段连续的字符序列,例如为“content”形式,控制单元调用中间层组件中支持字符串类型的设置接口,中间层组件对该类型数据不做处理,直接写入浏览器缓存。读取字符串类型数据时,控制单元调用中间层组件中支持字符串类型的读取接口,中间层组件从浏览器缓存读取字符串类型数据后不做处理,直接返回给控制单元。

整数型数据的结构为一个整数,例如为“123”,控制单元调用中间层组件中支持整数型的设置接口,中间层程序拿到该类型数据不做处理,直接写入浏览器缓存。读取整数型数据时,控制单元调用中间层组件中支持整数型的读取接口,中间层组件从浏览器缓存读取整数型数据后不做处理,直接返回给控制单元。

浮点型数据的结构为一个小数,例如为“123.123”,控制单元通过调用中间层组件中支持浮点型的设置接口设置该数据,中间层程序拿到该类型数据不做处理,直接写入浏览器缓存。读取浮点型数据时,控制单元调用中间层组件中支持浮点型的读取接口,中间层组件从浏览器缓存读取浮点型数据后不做处理,直接返回给控制单元。

本发明中出现的部分名词解释如下:

中间层组件:介于控制单元和浏览器之间的一个组件,用于处理数据类型的转换。本发明通过定义列表类型、哈希类型、字符串类型、整数型、浮点型这几种数据类型以及对应的设置方法和读取方法,让服务器和前端数据格式一一对应,而列表类型、哈希类型、字符串类型、整数型、浮点型这几种数据类型会通过上述定义的方法转换为浏览器可识别的字符串数据。本发明把这里定义的类型以及这些方法统称为中间层组件。

列表类型(List类型):中间层数据类型的一种,用于存储一组连续的可重复的数据。

哈希类型(Map类型):中间层数据类型的一种,是一个数据集合,数据由“键-值”两部分组成,集合中“键”不可以重复。

字符串类型(String类型):中间层数据类型的一种,用于存储一段连续的字符序列。

整数型(Int类型):中间层数据类型的一种,用于存储一个整数。

浮点型(Float类型):中间层数据类型的一种,用于存储一个小数。

接口:一组操作某种数据类型的方法。

操作List类型数据的接口如下:

设置接口:setList(name,value)

读取接口:getList(name)

操作Map类型数据的接口如下:

设置接口:setMap(name,value)

读取接口:getMap(name)

操作String类型数据的接口如下:

设置接口:setString(name,value)

读取接口:getString(name)

操作Int类型数据的接口如下:

设置接口:setInt(name,value)

读取接口:getInt(name)

操作Float类型数据的接口如下:

设置接口:setFloat(name,value)

读取接口:getFloat(name)

本领域的技术人员可以对本发明实施例进行各种修改和变型,倘若这些修改和变型在本发明权利要求及其等同技术的范围之内,则这些修改和变型也在本发明的保护范围之内。

说明书中未详细描述的内容为本领域技术人员公知的现有技术。

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