缓存数据处理方法和装置制造方法及图纸

技术编号:13800865 阅读:43 留言:0更新日期:2016-10-07 06:57
本发明专利技术提供了一种缓存数据处理方法和装置,所述方法包括:与服务器建立网络连接;通过所述网络连接拉取所述服务器所缓存的数据;将拉取的数据直接缓存在本地内存储器中;从本地内存储器所缓存的数据中筛选出待转移数据;将所述待转移数据从本地内存储器转移到本地外存储器中缓存。本发明专利技术提供的缓存数据处理方法和装置,通过网络缓存、本地内存储器缓存和外存储器缓存的三级动态缓存策略,本地内存储器占用少,而且可以即时通过网络获取新的数据,并优先通过本地内存储器获取已缓存的数据,保证数据处理的效率。

【技术实现步骤摘要】

本专利技术涉及终端
,特别是涉及一种缓存数据处理方法和装置
技术介绍
缓存是指临时的数据交换区,因为直接取原始数据的代价太大,终端把最常用的数据从存储器里取出来临时放在缓存里,这样终端可以快速获取到缓存中的数据,提高数据处理效率。目前终端一般采用磁盘缓存方式或者内存储器缓存方式来达到缓存数据的目的。然而,磁盘缓存方式虽然可以持久保存数据,不容易丢失,但通过磁盘I/O(输入/输出)端口读写的速度慢,影响了数据处理的效率。而内存储器缓存的方式虽然可以保证数据处理的效率,但是终端的内存储器是非常有限的资源,无法用来缓存所有数据。因此,目前的数据缓存方式不能兼顾效率和内存储器占用率。
技术实现思路
基于此,有必要针对目前的数据缓存方式不能兼顾效率和内存储器占用率的问题,提供一种缓存数据处理方法和装置。一种缓存数据处理方法,所述方法包括:与服务器建立网络连接;通过所述网络连接拉取所述服务器所缓存的数据;将拉取的数据直接缓存在本地内存储器中;从本地内存储器所缓存的数据中筛选出待转移数据;将所述待转移数据从本地内存储器转移到本地外存储器中缓存。一种缓存数据处理装置,所述装置包括:网络缓存模块,用于与服务器建立网络连接;还用于通过所述网络连接拉
取所述服务器所缓存的数据;本地内存储器缓存模块,用于将拉取的数据直接缓存在本地内存储器中;还用于从本地内存储器所缓存的数据中筛选出待转移数据;本地外存储器缓存模块,用于将所述待转移数据从本地内存储器转移到本地外存储器中缓存。上述缓存数据处理方法和装置,获取到服务器缓存的数据后缓存到本地内存储器中,再将其中一部分缓存到外存储器。这样通过网络缓存、本地内存储器缓存和外存储器缓存的三级动态缓存策略,本地内存储器占用少,而且可以即时通过网络获取新的数据,并优先通过本地内存储器获取已缓存的数据,保证数据处理的效率。附图说明图1为一个实施例中用于实现缓存数据处理方法的终端的内部结构图;图2为一个实施例中缓存数据处理方法的流程示意图;图3为一个实施例中调用缓存数据的步骤的流程示意图;图4为一个实施例中动态计算数据量阈值的步骤的流程示意图;图5为一个实施例中从内存储器向外存储器转移缓存的数据的示意图;图6为一个实施例中缓存数据处理装置的结构框图;图7为另一个实施例中缓存数据处理装置的结构框图;图8为再一个实施例中缓存数据处理装置的结构框图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,在一个实施例中,提供了一种终端100,该终端100包括通过系统总线连接的处理器、内存储器、外存储器和网络接口。其中,该终端100的外
存储器存储有操作系统和一种缓存数据处理装置,该缓存数据处理装置用于实现一种缓存数据处理方法。该终端100的处理器被配置为执行一种缓存数据处理方法。该终端100的网络接口用于与服务器连接通信。该终端100可以是台式计算机,优选为移动终端。移动终端比如可以是智能手机、平板电脑或者PDA(个人数字助理)等。如图2所示,在一个实施例中,提供了一种缓存数据处理方法,本实施例以该方法应用于上述图1中的终端100来举例说明,该终端100运行有Android(安卓)操作系统,其上运行有一种应用程序,通过该应用程序来实现上述缓存数据处理方法。步骤202,与服务器建立网络连接。具体地,终端内置有服务器的公网地址,用户也可以对终端内置的服务器的公网地址进行配置。这样终端可以根据服务器的公网地址,通过有线或者无线方式接入互联网,并经由互联网连接到服务器,从而建立起终端与服务器之间的网络连接。终端与服务器之间通信可以采用预先定义的终端与服务器之间的通信协议。终端与服务器之间的网络连接优选为长连接。终端可以定时向服务器发送数据包来保持长连接。这里的定时可以是每隔预设时间间隔或者每到预设时间点。步骤204,通过网络连接拉取服务器所缓存的数据。具体地,服务器缓存了数据,服务器缓存的数据优选是具有实时性的数据,比如流媒体数据或者游戏数据。流媒体可以是音频流媒体、视频流媒体或者音视频结合的流媒体。终端通过网络连接拉取服务器上缓存的数据,具体由终端发起数据获取请求,并通过网络连接发送到服务器,接收服务器根据该数据获取请求而返回的缓存在服务器上的数据。其中数据获取请求携带有数据的索引标识,用于指定需要请求获取的数据。步骤206,将拉取的数据直接缓存在本地内存储器中。这里的本地内存储器是指随机存储器(Random Access Memory,RAM),其
作用是暂时存放处理器的运算数据,并存放外存储器交换的数据。终端在运行中,处理器会把需要运算的数据调到本地内存储器中进行运算,当运算完成后处理器再将运算结果传送出来。直接缓存在本地内存储器中,是指不经过外存储器而直接缓存在本地内存储器中。外存储器是指终端中除了处理器缓存和本地内存储器之外的存储器,外存储器在断电后仍然能够保存数据。外存储器可以是磁存储器、光存储器或者可擦写闪存。终端将拉取的数据存放在本地内存储器中为应用程序分配的内存地址,用内存链表来存储数据。步骤208,从本地内存储器所缓存的数据中筛选出待转移数据。具体地,终端根据预定义的筛选方式,可定时将本地内存储器所缓存的数据中不常用到的数据筛选出来,作为待转移数据。待转移数据是指需要从本地内存储器转移出的数据。步骤210,将待转移数据从本地内存储器转移到本地外存储器中缓存。具体地,待转移数据转移到本地外存储器中缓存,本地内存储器中将不再缓存该待转移数据。该待转移数据再次被调用时,需要从本地外存储器中调取,虽然会影响到调用该待转移数据的效率,但是可以保证从服务器拉取到的新的数据可以缓存在本地内存储器中。具体本地外存储器中可以用数据库来缓存获取到的待转移数据,比如可以采用SQLite(一款轻型数据库)进行缓存。上述缓存数据处理方法,获取到服务器缓存的数据后缓存到本地内存储器中,再将其中一部分缓存到外存储器。这样通过网络缓存、本地内存储器缓存和外存储器缓存的三级动态缓存策略,本地内存储器占用少,而且可以即时通过网络获取新的数据,并优先通过本地内存储器获取已缓存的数据,保证数据处理的效率。如图3所示,在一个实施例中,该缓存数据处理方法还包括调用缓存数据的步骤,具体包括如下步骤:步骤302,接收数据调用请求。具体地,数据调用请求是指请求调用相应的数据的指令,数据调用请求指定了需要调用的数据,比如可以携带有索引标识,通过该索引标识来定位内存
链表中的相应数据。相应地,本地内存储器中通过内存链表来保存缓存的数据。步骤304,判断本地内存储器所缓存的数据中是否存在数据调用请求所指定的数据;若是,则执行步骤306;若否,则执行步骤308。具体地,终端可以遍历本地内存储器中分配给应用程序的索引区,判断是否存在数据调用请求所携带的索引标识所对应的数据,若是则执行步骤306,否则执行步骤308。步骤306,从本地内存储器缓存的数据中获取相应的数据。具体地,若判定本地内存储器所缓存的数据中存在数据调用请求所指定的数据,比如经过遍历分配给本文档来自技高网
...

【技术保护点】
一种缓存数据处理方法,所述方法包括:与服务器建立网络连接;通过所述网络连接拉取所述服务器所缓存的数据;将拉取的数据直接缓存在本地内存储器中;从本地内存储器所缓存的数据中筛选出待转移数据;将所述待转移数据从本地内存储器转移到本地外存储器中缓存。

【技术特征摘要】
1.一种缓存数据处理方法,所述方法包括:与服务器建立网络连接;通过所述网络连接拉取所述服务器所缓存的数据;将拉取的数据直接缓存在本地内存储器中;从本地内存储器所缓存的数据中筛选出待转移数据;将所述待转移数据从本地内存储器转移到本地外存储器中缓存。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收数据调用请求;判断本地内存储器所缓存的数据中是否存在所述数据调用请求所指定的数据,若是,则从本地内存储器缓存的数据中获取相应的数据;若否,则判断本地外存储器所缓存的数据中是否存在所述数据调用请求所指定的数据,若是,则从本地外存储器缓存的数据中获取相应的数据;若否,则从所述服务器拉取所述数据调用请求所指定的数据。3.根据权利要求1所述的方法,其特征在于,所述从本地内存储器所缓存的数据中筛选出待转移数据,包括:定时将本地内存储器所缓存的数据中在至当前时间的指定时间长度的时间范围内被调用次数最少的数据作为待转移数据;或者,定时将本地内存储器所缓存的数据中具有与当前时间差距最大的最后被调用时间的数据作为待转移数据;或者,定时将本地内存储器所缓存的数据中在至当前时间的指定时间长度的时间范围内未被调用的数据中的任意至少一项作为待转移数据。4.根据权利要求1-3中任意一项所述的方法,其特征在于,所述从本地内存储器所缓存的数据中筛选出待转移数据,包括:定时将本地内存储器所缓存的数据中超过数据量阈值的数据作为待转移数据。5.根据权利要求4所述的方法,其特征在于,所述将本地内存储器所缓存的数据中超过数据量阈值的数据作为待转移数据之前,还包括:获取本地内存储器当前的已使用量和当前运行的应用程序数量;计算所述已使用量和应用程序数量的比值;根据所述已使用量和应用程序数量的比值计算数据量阈值。6.一种缓存数据处理装置,其特征在于,所述装置包括:网络缓存模块,用于与服务器建立网络连接;还用于通过所述网络连接拉取所述服务器所缓存的数据;本地内存储器缓存模块,用于将拉取的数据直接缓存在本地内存储器中;还用于从本地内存储器所缓存的数据中筛选出待转移数据;本地外存储器缓存模块,用于将所述待转移数...

【专利技术属性】
技术研发人员:王刚
申请(专利权)人:深圳市腾讯计算机系统有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1