一种分页缓存数据的更新方法和装置与流程

文档序号:12825115阅读:207来源:国知局
一种分页缓存数据的更新方法和装置与流程

本发明涉及数据处理领域,更具体地说,涉及一种分页缓存数据的更新方法和装置。



背景技术:

目前,对于像新闻信息这类数据量较大的信息可以以列表型页面在终端中显示。用户可以通过切换页访问不同的分页。同时,为了提高信息读取速度,会在终端和服务器端之间设置缓存系统,在读取大容量信息列表数据时,使用缓存系统直接为终端服务,可以减少终端与服务器端之间的数据交互。为了降低服务器端的数据库与缓存系统的资源压力,在缓存系统中构建分页缓存。但是,对服务器端的数据库中数据的更新操作(即添加、修改或删除信息列表的内容的操作)都是对于某一数据的单独操作,难以定位和更新以页为单位的缓存系统中的数据,导致服务器端的数据库中的数据更新后,缓存系统中的分页缓存数据并未更新。



技术实现要素:

有鉴于此,本发明提出一种分页缓存数据的更新方法和装置,欲实现及时同步缓存系统中分页缓存数据目的。

为了实现上述目的,现提出的方案如下:

一种分页缓存数据的更新方法,包括:

接收终端的数据查询请求;

根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,若存在,则查询数据库更新所述分页缓存数据;

向所述终端返回所述数据查询请求对应的分页缓存数据。

优选的,在所述接收终端的数据查询请求前,还包括:

将所述数据库中被更新的数据记录的更新信息保存至所述数据更新记录池。

优选的,所述更新信息为:更新时间时间戳。

优选的,所述根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,具体包括:

判断所述分页缓存数据中是否存在更新时间时间戳大于第一时间戳的数据记录,若存在,则确定所述数据查询请求对应的分页缓存数据中存在需要被更新的数据记录,若不存在,则确定所述数据查询请求对应的分页缓存数据中不存在需要被更新的数据记录,所述第一时间戳为所述分页缓存数据被生成时对应的生成时间时间戳。

一种分页缓存数据的更新装置,包括:

请求接收单元,用于接收终端的数据查询请求;

更新判断单元,用于根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,若存在,则依此执行数据更新单元、数据返回单元;若不存在,则执行所述数据返回单元;

所述数据更新单元,用于查询数据库更新所述分页缓存数据;

所述数据返回单元,用于向所述终端返回所述数据查询请求对应的分页缓存数据。

优选的,所述装置,还包括:

记录池更新装置,用于在所述接收终端的数据查询请求前,将所述数据库中被更新的数据记录的更新信息保存至所述数据更新记录池。

优选的,所述更新信息为:更新时间时间戳。

优选的,所述更新判断单元,具体用于:

判断所述分页缓存数据中是否存在更新时间时间戳大于第一时间戳的数据记录,若存在,则确定所述数据查询请求对应的分页缓存数据中存在需要被更新的数据记录,若不存在,则确定所述数据查询请求对应的分页缓存数据中不存在需要被更新的数据记录,所述第一时间戳为所述分页缓存数据被生成时对应的生成时间时间戳。

与现有技术相比,本发明的技术方案具有以下优点:

上述技术方案提供的一种分页缓存数据的更新方法和装置,接收终端的数据查询请求后,根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,若存在,则查询数据库更新所述分页缓存数据,然后向终端返回数据查询请求对应的分页缓存数据。在接收到终端的数据查询请求后,主动检查相应分页缓存数据中是否过期,即是否需要被更新,进而及时同步缓存系统中分页缓存数据。

附图说明

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

图1为本发明实施例提供的一种分页缓存数据的更新方法的流程图;

图2为本发明实施例提供的另一种分页缓存数据的更新方法的流程图;

图3为本发明实施例提供的一种分页缓存数据的更新装置的结构示意图;

图4为本发明实施例提供的另一种分页缓存数据的更新装置的结构示意图。

具体实施方式

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

本实施例提供一种分页缓存数据的更新方法,参见图1所示,该方法可以包括:

步骤s11:接收终端的数据查询请求;

当用户切换页访问某一页面时,终端向服务器端发送相应的数据查询请求。

步骤s12:根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,若存在,则执行步骤s13,若不存在,则执行步骤s14;

步骤s13:查询数据库更新所述分页缓存数据;

数据库由数据表构成,表的列叫“字段”或“栏位”,表的行叫“记录”,一条数据记录是指对应于数据源中一行信息的一组完整的相关信息。数据更新记录池中包含数据库中每条数据记录的更新信息。对于数据查询请求对应的分页缓存数据中每一条数据记录,利用更新记录池中包含的数据库中的相应数据记录的更新信息,判断是否过期,只要能判断出分页缓存数据中的任意一条数据记录过期,即判断出存在需要被更新的数据记录,则查询数据库更新分页缓存数据,实现缓存系统中分页缓存数据的及时同步。

步骤s14:向所述终端返回所述数据查询请求对应的分页缓存数据。

若分页缓存数据中不存在过期的数据记录,则可以直接向终端返回相应的分页缓存数据,而不用在分页缓存数据同步后,再向终端返回同步后的分页缓存数据。

本实施例提供的一种分页缓存数据的更新方法,接收终端的数据查询请求后,根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,若存在,则查询数据库更新所述分页缓存数据,然后向终端返回数据查询请求对应的分页缓存数据。在接收到终端的数据查询请求后,主动检查相应分页缓存数据中是否过期,即是否需要被更新,进而实现了及时同步缓存系统中分页缓存数据。

进一步的,参见图2所示,在所述接收终端的数据查询请求前,还可以包括:

步骤s10:将所述数据库中被更新的数据记录的更新信息保存至所述数据更新记录池。

服务器端在接收到终端针对数据库中某条数据的更新请求(添加、修改或删除请求)后,在执行更新请求时,还会在数据更新记录池中保存相应数据记录对应的更新信息,具体的可以是更新时间时间戳。以该条数据记录的唯一标识符(itemid)作为键保存该条数据记录的更新时间时间戳(即更新时间的值)。

在接收到终端的数据查询请求后,判断分页缓存数据中是否存在更新时间时间戳大于第一时间戳的数据记录,若存在,则确定所述数据查询请求对应的分页缓存数据中存在需要被更新的数据记录,若不存在,则确定所述数据查询请求对应的分页缓存数据中不存在需要被更新的数据记录,所述第一时间戳为所述分页缓存数据被生成时对应的生成时间时间戳。

在某一分页缓存数据包含其被生成时对应的生成时间时间戳(即生成时间的值)。利用分页缓存数据包含的每条数据记录的唯一标识符在数据更新记录池查询到与该唯一标识符对应的更新时间时间戳,若该更新时间时间戳大于分页缓存数据的生成时间时间戳,则说明数据记录已经过期,需要同步该分页缓存数据。

对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。

下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。

本实施例提供一种分页缓存数据的更新装置,参见图3所示,该装置可以包括:

请求接收单元11,用于接收终端的数据查询请求;

更新判断单元12,用于根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,若存在,则依此执行数据更新单元13、数据返回单元14;若不存在,则执行所述数据返回单元14;

所述数据更新单元13,用于查询数据库更新所述分页缓存数据;

所述数据返回单元14,用于向所述终端返回所述数据查询请求对应的分页缓存数据。

本实施例提供的一种分页缓存数据的更新装置,请求接收单元11接收终端的数据查询请求后,更新判断单元12根据数据更新记录池包含数据库中数据记录的更新信息,判断与所述数据查询请求对应的分页缓存数据中是否存在需要被更新的数据记录,若存在,则数据更新单元13查询数据库更新所述分页缓存数据,然后数据返回单元14向终端返回数据查询请求对应的分页缓存数据。在接收到终端的数据查询请求后,主动检查相应分页缓存数据中是否过期,即是否需要被更新,进而实现了及时同步缓存系统中分页缓存数据。

本实施例提供另一种分页缓存数据的更新装置,参见图4所示,相对上述实施例公开的装置,该装置还可以包括:

记录池更新装置10,用于在所述接收终端的数据查询请求前,将所述数据库中被更新的数据记录的更新信息保存至所述数据更新记录池。

优选的,所述更新信息可以为:更新时间时间戳。

更新判断单元12,具体用于:判断所述分页缓存数据中是否存在更新时间时间戳大于第一时间戳的数据记录,若存在,则确定所述数据查询请求对应的分页缓存数据中存在需要被更新的数据记录,若不存在,则确定所述数据查询请求对应的分页缓存数据中不存在需要被更新的数据记录,所述第一时间戳为所述分页缓存数据被生成时对应的生成时间时间戳

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对本发明所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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