一种缓存数据处理方法及服务器与流程

文档序号:13175395阅读:331来源:国知局
技术领域本发明涉及通信领域,尤其涉及一种缓存数据处理方法及服务器。

背景技术:
随着互联网的发展和人民生活水平的提高服务器产品中存在一类普遍的需求,即数据的上架时间与下架时间机制。例如,商城中某个商品可以设置某天的某个时刻上架,某天的某个时刻下架;应用中心中某个应用可以设置某天的某个时刻上架,某天的某个时刻下架。上下架机制在缓存方案使用的技术一般是设置该数据的有效期,例如半个小时,也就是说,数据的上架与下架一般会存在半个小时的滞后性;而另一种常见的方案是将上下架时间设置为以天为单位,这样可以在每天凌晨的定时任务中对达到下架时间的数据进行清理,但是这样做往往需要牺牲数据更多的可运营性。

技术实现要素:
本发明的主要目的在于提出一种缓存数据处理方法及服务器,旨在解决现有技术中存在的上述问题。为实现上述目的,本发明提供的一种缓存数据处理方法,应用于服务器,所述方法包括:接收客户端发送的针对第一网页的页面数据请求信息,基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息;基于所述至少一个数据的标识信息从缓存中获取到所述至少一个数据的至少一个快照信息;其中,所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间;基于所述快照信息对所述至少一个数据进行过滤,得到过滤后的至少一个数据的标识信息;基于针对第一网页的页面数据请求信息、以及过滤后的至少一个数据的标识信息,从缓存中获取到针对所述第一网页的目标页面的目标数据,以向所述客户端反馈目标页面的目标数据。本发明提供的一种服务器,包括:请求获取单元,用于接收客户端发送的针对第一网页的页面数据请求信息,基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息;快照查找单元,用于基于所述至少一个数据的标识信息从缓存中获取到所述至少一个数据的至少一个快照信息;其中,所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间;过滤单元,用于基于所述快照信息对所述至少一个数据进行过滤,得到过滤后的至少一个数据的标识信息;数据发送单元,用于基于针对第一网页的页面数据请求信息、以及过滤后的至少一个数据的标识信息,从缓存中获取到针对所述第一网页的目标页面的目标数据,以向所述客户端反馈目标页面的目标数据。本发明提出的缓存数据处理方法及服务器,收到第一网页的页面数据请求信息后,获取到第一网页对应的至少一个数据,进而根据快照数据对至少一个数据进行过滤,最后对过滤后得到的数据进行提取,得到针对目标页面的目标数据的标识信息,根据目标数据的标识信息获取到目标页面的目标数据。如此,就保持数据的一致性,同时通过采用快照的形式,减少了缓存访问次数,提高了接口并发性能。另外,由于快照信息中仅包括有数据的标识信息以及数据的起始结束时间,所以保证本方案不会占用过多的缓存空间。附图说明图1为本发明实施例应用的网络架构示意图;图2为本发明实施例缓存数据处理方法流程示意图一;图3为本发明实施例数据的标识信息与快照信息之间的对应关系;图4为本发明实施例数据快照中包含的内容;图5为本发明实施例基于快照信息对数据进行过滤的处理示意图;图6为本发明实施例对缓存数据及其快照进行刷新的处理示意图;图7为本发明实施例缓存数据处理方法流程示意图二;图8为本发明实施例服务器组成结构示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例应用于服务器侧,如图1所示,该服务器11侧需要与至少一个客户端12之间进行交互,具体的可以包括有客户端向服务器侧发出数据请求信息,然后服务器侧向客户端进行反馈。其中,所述客户端可以为安装在移动终端、或者平板电脑、或者台式机中的具备通过网络获取数据功能的客户端。比如,可以为能够安装并运行网页浏览软件的客户端。移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。基于上述移动终端硬件结构以及通信系统,提出本发明方法各个实施例。实施例一、本发明实施例提供了一种缓存数据处理方法,应用于服务器,如图2所示,包括:步骤201:接收客户端发送的针对第一网页的页面数据请求信息,基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息;步骤202:基于所述至少一个数据的标识信息从缓存中获取到所述至少一个数据的至少一个快照信息;其中,所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间;步骤203:基于所述快照信息对所述至少一个数据进行过滤,得到过滤后的至少一个数据的标识信息;步骤204:基于针对第一网页的页面数据请求信息、以及过滤后的至少一个数据的标识信息,从缓存中获取到针对所述第一网页的目标页面的目标数据,以向所述客户端反馈目标页面的目标数据。这里,所述服务器可以为专门保存缓存数据的缓存服务器。所述客户端可以为安装在移动终端、或者平板电脑、或者台式机中的具备通过网络获取数据功能的客户端。比如,可以为能够安装并运行网页浏览软件的客户端。访问第一网页的方式可以为通过网页的URL进行访问,比如,http://www.123.com。相应的,针对第一网页的页面数据请求信息,可以为针对第一网页中的某一个页面的请求信息,比如,第一网页可以由多个页面组成,其中每一个页面均可以对应一个页面数据请求信息。基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息,可以为根据所述请求信息首先获取到所述第一网页在缓存中保存的全部的数据对应的标识信息。本实施例中所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间等。另外,比如图3所示,本实施例中每一个数据的标识信息均对应一个快照信息进一步地,建立所述数据对应的快照信息的方式可以为,基于运营数据,如应用的推荐列表、活动列表、礼包列表、排行榜等中抽取出其涉及到过滤状态的部分,如参见图4,数据快照中可以包括有数据ID、状态、上架时间、下架时间等,这些部分作为该数据的快照。快照部分除了这里说到的状态与上下架时间,还可以包括更多属性,例如数据是否隐藏、是否审核中等。其中,所述数据是否隐藏以及是否审核中也可以影响到数据的过滤,比如,当快照信息中表示数据隐藏,可以确定将数据过滤掉,也就是将数据不添加到过滤数据列表中;或者,当快照信息中表示数据处于审核中,也可以确定将数据过滤掉,即不将数据添加到过滤数据列表中。进一步地,得到过滤后的至少一个数据的标识信息,可以为:建立一个过滤数据列表,将过滤后未被删除的数据的标识信息添加到数据过滤列表中。所述第一网页的页面数据请求信息中除了包括有第一网页对应的URL之外,还可以包括有目标页面的标识,比如,可以为第一页或者第N页,其中,N为大于等于1的整数。本实施例通过将数据的相关属性信息(如上下架时间、状态等)作为数据快照,在需要获取数据时,采用快照对数据进行筛选。比如,参见图5,第一网页对应有n个数据,那么其对应的快照信息也为n个,通过n个快照信息对n个数据进行过滤,其中n为大于等于1的整数;最后得到过滤之后的m个数据的标识信息,其中,m为大于等于1且小于等于n的整数。比如,在实际使用上述方案时,在缓存服务器中通过添加每一个数据的快照信息,具体通过在快照信息中设置针对该数据的上架时间以及下架时间,使得用户通过缓存服务器获取该数据时,能够保证客户端能够具备统一的获取数据的管理机制,不会产生在某一个网页查看该数据已经下架,但是在另一个网页中查看该数据还处于上架状态的问题,保证了数据的上下架时间的统一性、并且避免其滞后性。另外,由于能够通过快照信息对数据的上下架时间进行精确的控制,所以可以避免以天为单位来对数据进行清理等处理,避免牺牲掉数据的可运营性。可见,通过采用本方案,收到第一网页的页面数据请求信息后,获取到第一网页对应的至少一个数据,进而根据快照数据对至少一个数据进行过滤,最后对过滤后得到的数据进行提取,得到针对目标页面的目标数据的标识信息,根据目标数据的标识信息获取到目标页面的目标数据。如此,就保持数据的一致性,同时通过采用快照的形式,减少了缓存访问次数,提高了接口并发性能,保证了展示给客户端的数据的准确性。另外,由于快照信息中仅包括有数据的标识信息以及数据的起始结束时间,所以保证本方案不会占用过多的缓存空间。实施例二、本发明实施例提供了一种缓存数据处理方法,应用于服务器,如图2所示,包括:步骤201:接收客户端发送的针对第一网页的页面数据请求信息,基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息;步骤202:基于所述至少一个数据的标识信息从缓存中获取到所述至少一个数据的至少一个快照信息;其中,所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间;步骤203:基于所述快照信息对所述至少一个数据进行过滤,得到过滤后的至少一个数据的标识信息;步骤204:基于针对第一网页的页面数据请求信息、以及过滤后的至少一个数据的标识信息,从缓存中获取到针对所述第一网页的目标页面的目标数据,以向所述客户端反馈目标页面的目标数据。这里,所述服务器可以为专门保存缓存数据的缓存服务器。所述客户端可以为安装在移动终端、或者平板电脑、或者台式机中的具备通过网络获取数据功能的客户端。比如,可以为能够安装并运行网页浏览软件的客户端。访问第一网页的方式可以为通过网页的URL进行访问,比如,http://www.123.com。相应的,针对第一网页的页面数据请求信息,可以为针对第一网页中的某一个页面的请求信息,比如,第一网页可以由多个页面组成,其中每一个页面均可以对应一个页面数据请求信息。基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息,可以为根据所述请求信息首先获取到所述第一网页在缓存中保存的全部的数据对应的标识信息。本实施例中所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间等。另外,本实施例中每一个数据的标识信息均对应一个快照信息。进一步地,建立所述数据对应的快照信息的方式可以为,基于运营数据,如应用的推荐列表、活动列表、礼包列表、排行榜等中抽取出其涉及到过滤状态的部分,如状态、上架时间、下架时间等,这些部分作为该数据的快照。快照部分除了这里说到的状态与上下架时间,还可以包括更多属性,例如数据是否隐藏、是否审核中等。其中,所述数据是否隐藏以及是否审核中也可以影响到数据的过滤,比如,当快照信息中表示数据隐藏,可以确定将数据过滤掉,也就是将数据不添加到过滤数据列表中;或者,当快照信息中表示数据处于审核中,也可以确定将数据过滤掉,即不将数据添加到过滤数据列表中。进一步地,得到过滤后的至少一个数据的标识信息,可以为:建立一个过滤数据列表,将过滤后未被删除的数据的标识信息添加到数据过滤列表中。所述第一网页的页面数据请求信息中除了包括有第一网页对应的URL之外,还可以包括有目标页面的标识,比如,可以为第一页或者第N页,其中,N为大于等于1的整数。本实施例通过将数据的相关属性信息(如上下架时间、状态等)作为数据快照,在需要获取数据时,采用快照对数据进行筛选。比如,参见图4,第一网页对应有n个数据,那么其对应的快照信息也为n个,通过n个快照信息对n个数据进行过滤,其中n为大于等于1的整数;最后得到过滤之后的m个数据的标识信息,其中,m为大于等于1且小于等于n的整数。进一步地,所述基于所述至少一个数据的标识信息从缓存中获取到所述至少一个数据对应的至少一个快照信息,包括:基于所述数据的标识信息判断在缓存中是否保存有所述数据对应的快照信息;若未保存有所述数据对应的快照信息,则基于所述数据的标识信息从数据库中提取所述数据对应的快照信息。另外,所述方法还包括:判断缓存中的数据是否刷新;若确定刷新,则判断刷新的数据对应的快照信息是否发生变化,当确定刷新的所述数据对应的快照信息发生变化时,从数据库中获取刷新的所述数据对应的快照信息。当运营人员通过后台对数据进行修改的时候,为了保证修改的数据能够立刻在缓存中刷新,该方案需要为后台提供缓存刷新的接口。缓存刷新时,首先需要判断该数据的快照部分是否发生变化,如果发生变化,就需要刷新该数据所对应的快照列表;接着再对该数据的缓存部分进行刷新。也就是说,当数据在缓存中没有对应的快照信息时,需要从数据库中查看该数据对应的快照信息,另外,当数据出现刷新时也需要从数据库中查看数据对应的快照信息是否出现变化,比如,参见图6,首先刷新数据对应的缓存,然后从数据库获取数据的快照信息部分,基于数据库中获取到的数据的快照信息部分与当前缓存中保存的数据的快照信息部分进行比对,判断快照信息是否发生变化,若确定发生变化,则从数据库获取到快照信息列表并保存;最后可以根据刷新的快照信息列表对数据的缓存进行处理。另外,需要说明的是,为了更好的适配原有缓存方案,对应数据的数据快照列表直接存放在其缓存哈希表ID为0的位置,这样可以更加方便且统一的管理同一套缓存数据。所述基于所述快照信息对所述至少一个数据进行过滤,得到过滤后的至少一个数据的标识信息,包括:获取到当前时间值;依次从至少一个快照数据中获取到目标快照数据;判断当前时间值是否早于所述目标快照信息中所述数据的起始时间、或者是否晚于所述数据的终止时间;若当前时间值早于所述目标快照信息中所述数据的起始时间、或者晚于所述数据的终止时间,则将所述目标快照信息对应的数据的标识信息添加至数据过滤列表中;否则,确定将目标快照信息对应的数据的标识信息删除或者,不对该表示信息进行处理直接进入对下一个目标快照信息的处理中。与其相应的,所述基于针对第一网页的页面数据请求信息、以及过滤后的至少一个数据的标识信息,从缓存中获取到针对所述第一网页的目标页面的目标数据,包括:基于针对第一网页的页面数据请求信息,确定目标页面对应的起始数据标识信息以及终止数据标识信息;基于所述目标页面对应的起始数据标识信息以及终止数据标识信息,从数据过滤列表中选取得到所述目标页面对应的目标数据的标识信息;基于所述目标数据的标识信息从缓存中获取到目标数据。也就是说,参见图7,在获取某个页面的分页数据时,首先将其所有数据的快照提取出来放入缓存中,然后根据该快照列表,对数据进行过滤,过滤后再根据分页条件取出分页对应的id列表,最后根据该id列表从缓存中一次性取出数据列表返回给客户端。在这里,分页条件指的是客户端分页获取数据时的请求参数,例如获取数据的第几页,一页需要获取多少条数据。假设数据快照中有100条数据,经过状态、上架时间、下架时间等过滤后剩下80条数据,而客户端需要获取第一页的数据,该页需要20条数据。那么服务器这时候就会将这80条数据中的前20条数据的id组成id列表,再根据这20个id,利用缓存的列表读取技术,从缓存的内容区中一次性取出20个id所对应的数据内容列表作为结果返回给客户端。在该方案下,客户端任意时刻访问服务器所获取到的数据,都能保证是此时允许显示在客户端的数据。这样,就能充分保证运营数据的精确性。可见,通过采用本方案,收到第一网页的页面数据请求信息后,获取到第一网页对应的至少一个数据,进而根据快照数据对至少一个数据进行过滤,最后对过滤后得到的数据进行提取,得到针对目标页面的目标数据的标识信息,根据目标数据的标识信息获取到目标页面的目标数据。如此,就保持数据的一致性,同时通过采用快照的形式,减少了缓存访问次数,提高了接口并发性能。另外,由于快照信息中仅包括有数据的标识信息以及数据的起始结束时间,所以保证本方案不会占用过多的缓存空间。由于数据快照所占的空间很小,这种设计不会增大原有缓存方案的压力。另外,读取数据快照列表只需要访问一次缓存,所以对系统的性能也不会有任何的影响。综上所述,该方案创新性的设计了缓存的数据快照,在不增加缓存压力的前提下,通过较小的空间占用,解决了数据上下架时间机制中的系统性能、运营精确性、数据一致性等问题,同时以较小的修改代价融合到原有的缓存系统中,极大的提升了同类服务器产品的竞争力。实施例三、本发明实施例提供了一种服务器,如图8所示,包括:请求获取单元81,用于接收客户端发送的针对第一网页的页面数据请求信息,基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息;快照查找单元82,用于基于所述至少一个数据的标识信息从缓存中获取到所述至少一个数据的至少一个快照信息;其中,所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间;过滤单元83,用于基于所述快照信息对所述至少一个数据进行过滤,得到过滤后的至少一个数据的标识信息;数据发送单元84,用于基于针对第一网页的页面数据请求信息、以及过滤后的至少一个数据的标识信息,从缓存中获取到针对所述第一网页的目标页面的目标数据,以向所述客户端反馈目标页面的目标数据。这里,所述服务器可以为专门保存缓存数据的缓存服务器。所述客户端可以为安装在移动终端、或者平板电脑、或者台式机中的具备通过网络获取数据功能的客户端。比如,可以为能够安装并运行网页浏览软件的客户端。访问第一网页的方式可以为通过网页的URL进行访问,比如,http://www.123.com。相应的,针对第一网页的页面数据请求信息,可以为针对第一网页中的某一个页面的请求信息,比如,第一网页可以由多个页面组成,其中每一个页面均可以对应一个页面数据请求信息。基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息,可以为根据所述请求信息首先获取到所述第一网页在缓存中保存的全部的数据对应的标识信息。本实施例中所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间等。另外,比如图3所示,本实施例中每一个数据的标识信息均对应一个快照信息进一步地,建立所述数据对应的快照信息的方式可以为,基于运营数据,如应用的推荐列表、活动列表、礼包列表、排行榜等中抽取出其涉及到过滤状态的部分,如参见图5,数据快照中可以包括有数据ID、状态、上架时间、下架时间等,这些部分作为该数据的快照。快照部分除了这里说到的状态与上下架时间,还可以包括更多属性,例如数据是否隐藏、是否审核中等。其中,所述数据是否隐藏以及是否审核中也可以影响到数据的过滤,比如,当快照信息中表示数据隐藏,可以确定将数据过滤掉,也就是将数据不添加到过滤数据列表中;或者,当快照信息中表示数据处于审核中,也可以确定将数据过滤掉,即不将数据添加到过滤数据列表中。进一步地,得到过滤后的至少一个数据的标识信息,可以为:建立一个过滤数据列表,将过滤后未被删除的数据的标识信息添加到数据过滤列表中。所述第一网页的页面数据请求信息中除了包括有第一网页对应的URL之外,还可以包括有目标页面的标识,比如,可以为第一页或者第N页,其中,N为大于等于1的整数。本实施例通过将数据的相关属性信息(如上下架时间、状态等)作为数据快照,在需要获取数据时,采用快照对数据进行筛选。比如,参见图5,第一网页对应有n个数据,那么其对应的快照信息也为n个,通过n个快照信息对n个数据进行过滤,其中n为大于等于1的整数;最后得到过滤之后的m个数据的标识信息,其中,m为大于等于1且小于等于n的整数。可见,通过采用本方案,收到第一网页的页面数据请求信息后,获取到第一网页对应的至少一个数据,进而根据快照数据对至少一个数据进行过滤,最后对过滤后得到的数据进行提取,得到针对目标页面的目标数据的标识信息,根据目标数据的标识信息获取到目标页面的目标数据。如此,就保持数据的一致性,同时通过采用快照的形式,减少了缓存访问次数,提高了接口并发性能,保证了展示给客户端的数据的准确性。另外,由于快照信息中仅包括有数据的标识信息以及数据的起始结束时间,所以保证本方案不会占用过多的缓存空间。实施例四、本发明实施例提供了一种服务器,如图8所示,包括:请求获取单元81,用于接收客户端发送的针对第一网页的页面数据请求信息,基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息;快照查找单元82,用于基于所述至少一个数据的标识信息从缓存中获取到所述至少一个数据的至少一个快照信息;其中,所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间;过滤单元83,用于基于所述快照信息对所述至少一个数据进行过滤,得到过滤后的至少一个数据的标识信息;数据发送单元84,用于基于针对第一网页的页面数据请求信息、以及过滤后的至少一个数据的标识信息,从缓存中获取到针对所述第一网页的目标页面的目标数据,以向所述客户端反馈目标页面的目标数据。这里,所述服务器可以为专门保存缓存数据的缓存服务器。所述客户端可以为安装在移动终端、或者平板电脑、或者台式机中的具备通过网络获取数据功能的客户端。比如,可以为能够安装并运行网页浏览软件的客户端。访问第一网页的方式可以为通过网页的URL进行访问,比如,http://www.123.com。相应的,针对第一网页的页面数据请求信息,可以为针对第一网页中的某一个页面的请求信息,比如,第一网页可以由多个页面组成,其中每一个页面均可以对应一个页面数据请求信息。基于所述请求信息获取到所述第一网页对应的至少一个数据的标识信息,可以为根据所述请求信息首先获取到所述第一网页在缓存中保存的全部的数据对应的标识信息。本实施例中所述快照信息中至少包括有数据的标识信息、所述数据的起始时间以及终止时间等。另外,本实施例中每一个数据的标识信息均对应一个快照信息。进一步地,建立所述数据对应的快照信息的方式可以为,基于运营数据,如应用的推荐列表、活动列表、礼包列表、排行榜等中抽取出其涉及到过滤状态的部分,如状态、上架时间、下架时间等,这些部分作为该数据的快照。快照部分除了这里说到的状态与上下架时间,还可以包括更多属性,例如数据是否隐藏、是否审核中等。其中,所述数据是否隐藏以及是否审核中也可以影响到数据的过滤,比如,当快照信息中表示数据隐藏,可以确定将数据过滤掉,也就是将数据不添加到过滤数据列表中;或者,当快照信息中表示数据处于审核中,也可以确定将数据过滤掉,即不将数据添加到过滤数据列表中。进一步地,所述快照查找单元,用于建立一个过滤数据列表,将过滤后未被删除的数据的标识信息添加到数据过滤列表中。所述第一网页的页面数据请求信息中除了包括有第一网页对应的URL之外,还可以包括有目标页面的标识,比如,可以为第一页或者第N页,其中,N为大于等于1的整数。本实施例通过将数据的相关属性信息(如上下架时间、状态等)作为数据快照,在需要获取数据时,采用快照对数据进行筛选。比如,参见图4,第一网页对应有n个数据,那么其对应的快照信息也为n个,通过n个快照信息对n个数据进行过滤,其中n为大于等于1的整数;最后得到过滤之后的m个数据的标识信息,其中,m为大于等于1且小于等于n的整数。进一步地,所述快照查找单元,用于基于所述数据的标识信息判断在缓存中是否保存有所述数据对应的快照信息;若未保存有所述数据对应的快照信息,则基于所述数据的标识信息从数据库中提取所述数据对应的快照信息。另外,所述快照查找单元,用于判断缓存中的数据是否刷新;若确定刷新,则判断刷新的数据对应的快照信息是否发生变化,当确定刷新的所述数据对应的快照信息发生变化时,从数据库中获取刷新的所述数据对应的快照信息。当运营人员通过后台对数据进行修改的时候,为了保证修改的数据能够立刻在缓存中刷新,该方案需要为后台提供缓存刷新的接口。缓存刷新时,首先需要判断该数据的快照部分是否发生变化,如果发生变化,就需要刷新该数据所对应的快照列表;接着再对该数据的缓存部分进行刷新。也就是说,当数据在缓存中没有对应的快照信息时,需要从数据库中查看该数据对应的快照信息,另外,当数据出现刷新时也需要从数据库中查看数据对应的快照信息是否出现变化,比如,参见图6,首先刷新数据对应的缓存,然后从数据库获取数据的快照信息部分,基于数据库中获取到的数据的快照信息部分与当前缓存中保存的数据的快照信息部分进行比对,判断快照信息是否发生变化,若确定发生变化,则从数据库获取到快照信息列表并保存;最后可以根据刷新的快照信息列表对数据的缓存进行处理。另外,需要说明的是,为了更好的适配原有缓存方案,对应数据的数据快照列表直接存放在其缓存哈希表ID为0的位置,这样可以更加方便且统一的管理同一套缓存数据。所述过滤单元,用于获取到当前时间值;依次从至少一个快照数据中获取到目标快照数据;判断当前时间值是否早于所述目标快照信息中所述数据的起始时间、或者是否晚于所述数据的终止时间;若当前时间值早于所述目标快照信息中所述数据的起始时间、或者晚于所述数据的终止时间,则将所述目标快照信息对应的数据的标识信息添加至数据过滤列表中;否则,确定将目标快照信息对应的数据的标识信息删除或者,不对该表示信息进行处理直接进入对下一个目标快照信息的处理中。与其相应的,所述过滤单元,用于基于针对第一网页的页面数据请求信息,确定目标页面对应的起始数据标识信息以及终止数据标识信息;基于所述目标页面对应的起始数据标识信息以及终止数据标识信息,从数据过滤列表中选取得到所述目标页面对应的目标数据的标识信息;基于所述目标数据的标识信息从缓存中获取到目标数据。也就是说,参见图7,在获取某个页面的分页数据时,首先将其所有数据的快照提取出来放入缓存中,然后根据该快照列表,对数据进行过滤,过滤后再根据分页条件取出分页对应的id列表,最后根据该id列表从缓存中一次性取出数据列表返回给客户端。在这里,分页条件指的是客户端分页获取数据时的请求参数,例如获取数据的第几页,一页需要获取多少条数据。假设数据快照中有100条数据,经过状态、上架时间、下架时间等过滤后剩下80条数据,而客户端需要获取第一页的数据,该页需要20条数据。那么服务器这时候就会将这80条数据中的前20条数据的id组成id列表,再根据这20个id,利用缓存的列表读取技术,从缓存的内容区中一次性取出20个id所对应的数据内容列表作为结果返回给客户端。在该方案下,客户端任意时刻访问服务器所获取到的数据,都能保证是此时允许显示在客户端的数据。这样,就能充分保证运营数据的精确性。可见,通过采用本方案,收到第一网页的页面数据请求信息后,获取到第一网页对应的至少一个数据,进而根据快照数据对至少一个数据进行过滤,最后对过滤后得到的数据进行提取,得到针对目标页面的目标数据的标识信息,根据目标数据的标识信息获取到目标页面的目标数据。如此,就保持数据的一致性,同时通过采用快照的形式,减少了缓存访问次数,提高了接口并发性能。另外,由于快照信息中仅包括有数据的标识信息以及数据的起始结束时间,所以保证本方案不会占用过多的缓存空间。由于数据快照所占的空间很小,这种设计不会增大原有缓存方案的压力。另外,读取数据快照列表只需要访问一次缓存,所以对系统的性能也不会有任何的影响。综上所述,该方案创新性的设计了缓存的数据快照,在不增加缓存压力的前提下,通过较小的空间占用,解决了数据上下架时间机制中的系统性能、运营精确性、数据一致性等问题,同时以较小的修改代价融合到原有的缓存系统中,极大的提升了同类服务器产品的竞争力。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1