CN106649349B - 用于游戏应用的数据缓存方法、装置和系统 - Google Patents
用于游戏应用的数据缓存方法、装置和系统 Download PDFInfo
- Publication number
- CN106649349B CN106649349B CN201510728706.4A CN201510728706A CN106649349B CN 106649349 B CN106649349 B CN 106649349B CN 201510728706 A CN201510728706 A CN 201510728706A CN 106649349 B CN106649349 B CN 106649349B
- Authority
- CN
- China
- Prior art keywords
- data
- hot
- cache server
- preset
- network application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/972—Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种用于游戏应用的数据缓存方法、装置和系统。其中,该数据缓存方法包括:从游戏应用数据库读取网络应用数据;对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据;将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务。通过本发明,解决了难以兼顾数据访问效率和数据缓存成本的技术问题。
Description
技术领域
本发明涉互联网领域,具体而言,涉及一种用于游戏应用的数据缓存方法、装置和系统。
背景技术
目前,在参与的应用程序(Application,简称为APP)项目中有为客户端展示某种特定类型的网络应用数据的功能,其中,包括网络资讯数据。比如,在智能手机、平板电脑等客户端设备上的APP项目展示有包括饮食、住房、财经、娱乐、时尚、旅行、交通等网络资讯数据,以及对这些信息的二次处理所获得的附加信息,比如,评论、点赞、转发、分享、举报、昵称等信息。人们可以根据自己的兴趣爱好以及需求通过APP展示的内容获取相关网络资讯数据,可以了解热门或者非热门的网络资讯数据,以适应社会的快速发展。
由于网络应用数据存储在游戏应用数据库(Database,简称为DB)中,客户端每次请求如果都从DB中查询数据,会使客户端和服务器之间从发出请求到收到回包的时间间隔比较长,也即,访问时延较大,并且对DB的访问速度的快慢也会决定系统运行性能的好坏。
目前,采取对DB中的网络应用数据进行缓存的方式来实现对网络应用数据的访问。对网络应用数据的缓存采用统一保存缓存数据的方法,也即,将网络应用数据全部保存在本地缓存服务器上,或者全部保存在远端缓存服务器上。此种保存缓存数据的方法开发复杂性低,但是网络应用数据的保存过于简单,不能适应需求变化。随着网络业务量的增大以及网络业务类型的不断增多,网络应用数据量也会不断增长,当网络应用数据保存在本地缓存服务器时,由于本地缓存服务器内存的限制,所有的网络应用数据仅仅依靠保存在本地缓存服务器中是不可行的,不仅本地缓存服务器内存有限,而且单进程访问的内存大小也是有限制的。网络应用数据保存在远端缓存服务器,可以是保存在远端通用的缓存(Cache)服务器上。Cache服务器通过特定算法将访问比较频繁的数据存放在高速存储介质,可以实现低成本、高速的数据访问,但是,此种方式会增加网络交互的频率,从而增加了客户端和服务器之间从请求到收到回包的时间间隔,降低了数据访问效率。
另一方面,为了保证网络应用数据为人们提供准确、即时的信息,可以对网络应用数据的缓存数据进行定时更新。缓存数据的更新时间与服务启动的时间有较大关联,也即,与缓存数据上一次更新的时间有关。这样,在有多台缓存服务器部署,包括本地缓存服务器和远端缓存服务器的情况下,每台缓存服务器更新的时间不能保证一致,从而导致缓存数据的更新时间不一致。为了避免缓存数据的更新时间不一致,一般采用在单台缓存服务器更新缓存数据以后,进而广播通知其他缓存服务器同步更新缓存数据的方法,通过此方法可以解决缓存数据不一致的问题,但是由于开发成本和开发复杂性都比较高,导致数据缓存成本高,不易实现。
针对难以兼顾数据访问效率和数据缓存成本的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种用于游戏应用的数据缓存方法、装置和系统,以至少解决难以兼顾数据访问效率和数据缓存成本的技术问题。
根据本发明实施例的一个方面,提供了一种用于游戏应用的数据缓存方法,该数据缓存方法包括:从游戏应用数据库读取网络应用数据,其中,游戏应用数据库用于存储预设游戏应用的网络应用数据;对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据,其中,热门数据为用于供客户端从本地拉取的数据,非热门数据为用于供客户端从远端拉取的数据;将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务,本地缓存服务器用于从本地为客户端提供网络访问服务,远端缓存服务器用于从远端为客户端提供网络访问服务。
根据本发明实施例的另一方面,还提供了一种用于游戏应用的数据缓存装置,该数据缓存装置包括:获取单元,用于从游戏应用数据库读取网络应用数据,其中,游戏应用数据库用于存储预设游戏应用的网络应用数据;划分单元,用于对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据,其中,热门数据为用于供客户端从本地拉取的数据,非热门数据为用于供客户端从远端拉取的数据;存储单元,用于将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器用于从本地为客户端提供网络访问服务,远端缓存服务器用于从远端为客户端提供网络访问服务。
根据本发明实施例的另一方面,还提供了一种用于游戏应用的数据缓存系统,该数据缓存系统包括:本地缓存服务器和远端缓存服务器,本地缓存服务器用于从游戏应用数据库读取网络应用数据,对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据,将热门数据存储在本地,将非热门数据存储在远端缓存服务器,远端缓存服务器用于存储非热门数据,其中,游戏应用数据库用于存储预设游戏应用的网络应用数据,热门数据为用于供客户端从本地拉取的数据,非热门数据为用于供客户端从远端拉取的数据,本地缓存服务器用于从本地为客户端提供网络访问服务,远端缓存服务器用于从远端为客户端提供网络访问服务。
在本发明实施例中,通过从游戏应用数据库读取网络应用数据,然后对读取到的网络应用数据进一步划分,从而将网络应用数据划分为热门数据和非热门数据,并且将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务,实现了对网络应用数据的存储,达到了提供网络服务的目的而不影响数据访问效率和数据缓存成本,解决了难以兼顾数据访问效率和数据缓存成本的问题,进而达到了提高数据访问效率和降低数据缓存成本的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种硬件环境的示意图;
图2是根据本发明实施例的用于游戏应用的数据缓存方法的流程图;
图3是根据本发明实施例的对网络资讯数据进行划分的方法的流程图;
图4是根据本发明实施例的将非热门数据写入到本地缓存服务器的方法的流程图;
图5是根据本发明实施例的清除本地缓存服务器中的数据的方法的流程图;
图6是根据本发明第一实施例的用于游戏应用的数据缓存装置的示意图;
图7是根据本发明第二实施例的用于游戏应用的数据缓存装置的示意图;
图8是根据本发明第三实施例的用于游戏应用的数据缓存装置的示意图;
图9是根据本发明第四实施例的用于游戏应用的数据缓存装置的示意图;
图10是根据本发明第五实施例的用于游戏应用的数据缓存装置的示意图;
图11是根据本发明第一实施例的用于游戏应用的数据缓存系统的示意图;
图12是根据本发明第二实施例的用于游戏应用的数据缓存系统的示意图;以及
图13是根据本发明实施例的用于数据缓存系统的数据缓存方法的流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本发明实施例提供了一种用于游戏应用的数据缓存方法。
可选地,在本实施例中,上述的数据缓存方法可以应用于如图1所示的服务器102和客户端104所构成的硬件环境中。图1是根据本发明实施例的硬件环境的示意图,如图1所示,服务器102通过网络与客户端104进行连接,上述网络包括但不限于:广域网、城域网或局域网,客户端104并不限定于计算机、手机、平板电脑等。本发明实施例的数据缓存方法可以由服务器102来执行,也可以由客户端104来执行,还可以是由服务器102和客户端104共同执行。其中,客户端104执行本发明实施例的数据缓存方法也可以是由安装在其上的客户端来执行。
图2是根据本发明实施例的用于游戏应用的数据缓存方法的流程图,如图2所示,该数据缓存方法包括以下步骤:
步骤S202,从游戏应用数据库读取网络应用数据。
根据不同的业务场景,比如,电商、物流、支付、金融、广告、科技、家装、房产等业务,APP提供不同的网络应用数据,其中,包括网络资讯数据。网络资讯数据可以为新闻、供求、动态、技术、政策、评论、观点等具有时效性和地域性能的能给消费者带来价值的信息。优选地,本地缓存服务器从游戏应用数据库DB中读取网络应用数据。游戏应用数据库用于存储预设游戏应用的网络应用数据,通过读取游戏应用数据库可以读取存储预设游戏应用的网络应用数据。
优选地,本地缓存服务器包括多个本地缓存服务器。在从游戏应用数据库读取网络应用数据之前,数据缓存方法还包括:多个本地缓存服务器定期检查是否要从游戏应用数据库DB中读取网络应用数据执行同步更新。具体而言,多个本地缓存服务器通过公共时钟同步判断更新时间是否达到预设更新时间。当多个本地缓存服务器在通过公共时钟同步判断更新时间达到预设更新时间时,则多个本地缓存服务器从游戏应用数据库DB中读取网络应用数据执行同步更新。比如,设置时间间隔为update_gap,当前时间为cur_time,cur_time对update_gap进行取模。如果cur_time对update_gap进行取模运算之后,取模结果为0,则认为更新时间cur_time达到了预设更新时间,多个本地缓存服务器从游戏应用数据库DB中读取网络应用数据执行同步更新。随着网络应用数据的增多,满足客户端查询条件的网络应用数据也随之增加,客户端不能一次性浏览完所有的网络应用数据,可以采取从游戏应用数据库DB中分页读取各类网络应用数据,从源头减少数据处理量,从而可以减少本地缓存服务器的磁盘系统的读取压力,减少网络流量、减少网络压力、减轻客户端显示数据的压力,提高了数据处理效率。
网络应用数据,比如,网络资讯数据通常带有附加信息,包括对网络资讯数据的评论、点赞、转发、分享、举报、昵称等信息。在从游戏应用数据库读取网络资讯数据之后,获取网络资讯数据的附加信息。将网络资讯数据和附加信息进行汇总处理,得到包括网络资讯数据和网络资讯数据的附加信息的汇总数据。优选地,从游戏应用数据库分页读取网络资讯数据之后,获取分页网络资讯数据的附加信息。将分页的网络资讯数据和分页附加信息进行汇总处理,得到包括网络资讯数据和网络资讯数据的附加信息的分页汇总数据。
由于所有本地缓存服务器的更新时间都是同步的,更新时间的误差仅为秒数量级,从而实现了所有本地缓存服务器在同一时间读取网络应用数据对本地缓存服务器中的缓存数据进行更新,保证了从游戏应用数据库读取网络应用数据的时效性和数据的一致性,同时,开发复杂性低,降低了数据缓存成本。
步骤S204,对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据。
网络应用数据包括热门数据和非热门数据两种数据类型。热门数据为用于供客户端从本地拉取的数据,非热门数据为用于供客户端从远端拉取的数据,在从游戏应用数据库读取网络应用数据之后,可选地,按照预先设定的划分规则对网络应用数据进行划分,将满足预先设定的热门数据类型的网络应用数据划分为热门数据,将满足预先设定的非热门数据类型的网络应用数据划分为非热门数据。
举例而言,按照当前社会最需要为公众所获知的网络应用数据类型划分为热门数据,比如,将房产、汽车、社交、养老、会所等需要为公众所获知的网络应用数据划分为热门数据,按照当前社会不需要为公众普及的网络应用数据类型划分为非热门数据,比如,将股市、游戏、探险等不需要为公众普及的网络应用数据划分为非热门数据,从而更好地引导人们获取网络应用数据,达到社会宣传、调整人们行为规范的目的。
除了按照预先设定的划分规则对网络应用数据进行划分之外,还可以是按客户端访问量的多少来决定网络应用数据是否为热门的数据,数据的访问量越多,越被人们经常性地浏览,将此类数据划分为热门数据,数据的访问量越少,越不被人们经常性地浏览,将此类数据划分为非热门数据。可选地,根据网络应用数据的访问量对网络应用数据进行划分。设定预设访问量,该预设访问量可以根据整个网络应用数据的访问量按照统计学的原理来确定,作为将网络应用数据划分为热门数据和非热门数据的界限,也即,将访问量达到预设访问量的网络应用数据划分为热门数据,将访问量未达到预设访问量的网络应用数据划分为非热门数据。
举例而言,网络应用数据为房产的访问量为1856,网络应用数据为汽车的访问量为2125,网络应用数据为社交的访问量为1544,网络应用数据为养老的访问量为2001,网络应用数据为会所的访问量为1557,网络应用数据为股市的访问量为1957,网络应用数据为游戏的访问量为1601,网络应用数据为探险的访问量为1450,设第一预设访问量为1800,则达到访问量为1800的网络应用数据为热门数据,也即,房产、汽车、养老、股市的网络应用数据为热门数据;访问量未达到1800的网络应用数据划分为非热门数据,也即,社交、会所、游戏、探险的网络应用数据为非热门数据,从而为人们在选择网络应用数据时提供浏览参考。
网络应用数据包括网络资讯数据,对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据还包括将网络资讯数据划分为热门数据和非热门数据。图3是根据本发明实施例的对网络资讯数据进行划分的方法的流程图,如图3所示,该方法包括以下步骤:
步骤S302,在从游戏应用数据库读取网络资讯数据之后,获取网络资讯数据的附加信息。
步骤S304,将网络资讯数据和附加信息进行汇总处理,得到汇总数据。
步骤S306,将汇总数据进行划分,将汇总数据划分为热门数据和非热门数据。
可选地,按照预先设定的划分规则对网络资讯数据的汇总数据进行划分,将满足预先设定的热门数据类型的汇总数据划分为热门数据,将满足预先设定的非热门数据类型的汇总数据划分为非热门数据。
举例而言,网络资讯数据为饮食、住房、时尚、财经、旅行、交通、娱乐。其中,饮食、住房、娱乐、交通为人们需要经常关注的网络资讯数据,将此网络资讯数据的汇总数据划分为热门数据,时尚、财经、旅行为热门偶尔关注的网络资讯数据,将此网络资讯数据的汇总数据划分为非热门数据。
可选地,根据网络资讯数据的访问量对网络资讯数据的汇总数据进行划分,将访问量达到预设访问量的网络资讯数据的汇总数据划分为热门数据,将访问量未达到预设访问量的网络资讯数据的汇总数据划分为非热门数据。
举例而言,预设访问量设为1800,网络资讯数据为饮食的访问量为2530,网络资讯数据为住房的访问量为2600,网络资讯数据为时尚的访问量为1774,网络资讯数据为财经的访问量为1453,网络资讯数据为旅行的访问量为1216,网络资讯数据为交通的访问量为2000,网络资讯数据为娱乐的访问量为1964,则达到访问量为1800的网络资讯数据的汇总数据为热门数据,也即,将饮食、住房、交通、娱乐的网络资讯数据的汇总数据为热门数据;未达到访问量为1800的网络资讯数据的汇总数据为热门数据,也即,将时尚、财经、旅行的网络资讯数据的汇总数据为非热门数据。
该实施例的数据缓存方法对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据。网络应用数据还包括网络资讯数据,通过从游戏应用数据库读取网络资讯数据之后,获取网络资讯数据的附加信息,再将网络资讯数据和附加信息进行汇总处理,得到网络资讯数据和附加信息的汇总数据,将汇总数据进行划分,最后将汇总数据划分为热门数据和非热门数据,从而实现了对网络应用数据的划分。
步骤S206,将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器用于从本地为客户端提供网络访问服务,远端缓存服务器用于从远端为客户端提供网络访问服务。
在对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据之后,根据网络应用数据是否为热门数据,将网络应用数据存储在不同的介质上,实现对网络应用数据的分级存储,可以降低数据缓存的成本。优选地,将网络应用数据存储在本地缓存服务器,本地缓存服务器用于提供网络访问服务。具体而言,将网络应用数据写入本地的共享内存的读写列表中,得到本地缓存服务器中的缓存数据;将网络应用数据存储在远端缓存服务器,远端缓存服务器用于提供网络访问服务,可以为远端Cache服务器,具体而言,将网络应用数据写入远端的Redis列表中,得到远端缓存服务器中的缓存数据。其中,Redis是一个开源的使用标准编程ANSIC语言编写的支持网络,可基于内存,为持久化的日志型的键值Key-Value存储游戏应用数据库。
优选地,将热门数据存储在本地缓存服务器,可以将热门数据写入本地的共享内存的读写列表中;将非热门数据写入远端缓存服务器,可以将非热门数据写入远端的Redis列表中。当写入数据量比较大时,写入过程比较长,首先将写入列表与读取列表分离,当数据在写入列表中写完之后,再置换读写列表,得到列表数据。
当客户端访问列表数据时,向本地缓存服务器发出请求,本地缓存服务器判断访问请求的网络应用数据的数据类型,根据访问的网络应用数据的数据类型是否为热门数据来决定是从本地共享内存还是从远端Redis中读取列表数据,从而给客户端回包。
该实施例将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务,达到了客户端访问列表数据,并且根据访问网络应用数据的数据类型来从不同的介质中读取网络应用数据给客户端回包的目的,提高了数据访问效率,降低了数据缓存成本。
随着时间的推延,远端缓存服务器中的非热门数据随着客户端的访问,访问量在不同程度地增加,有些非热门数据的访问量增加得快,这样,在根据网络应用数据的访问量对网络应用数据进行划分,将访问量达到预设访问量的网络应用数据划分为热门数据,将访问量未达到预设访问量的网络应用数据划分为非热门数据时,远端缓存服务器中的非热门数据访问量可能会达到本地缓存器中热门数据的访问量,也即,远端缓存服务器中存在与本地缓存服务器中的热门数据的数据类型本质上相同的网络应用数据,需要将远端缓存服务器中与热门数据的数据类型本质上相同的网络应用数据的数据类型进行调整。网络应用数据的访问量具体可以通过对网络应用数据的访问次数来体现。图4是根据本发明实施例的将非热门数据写入到本地缓存服务器的方法的流程图,如图4所示,该将非热门数据写入到本地缓存服务器的方法包括以下步骤:
步骤S402,检测远端缓存服务器中非热门数据的被访问次数。
步骤S404,判断非热门数据的被访问次数是否达到预设次数。
步骤S406,如果判断出非热门数据的被访问次数达到预设次数,将非热门数据写入到本地缓存服务器。
优选地,在将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器之后,数据缓存方法还包括:检测远端缓存服务器中非热门数据的被访问次数;设定预设次数,此预设次数为是否将远端缓存服务器中的非热门数据划分为热门数据的界限,获取非热门数据的被访问次数,判断非热门数据的被访问次数是否达到预设次数;如果判断出非热门数据的被访问次数达到了预设次数,则非热门数据可以作为热门数据,将非热门数据写入到本地缓存服务器,如果判断出非热门数据的被访问次数没有达到预设次数,则仍将其存储在远端缓存服务器中,作为非热门数据。具体而言,将被访问次数达到预设次数的非热门数据对应的分页页面数据写入到本地的共享内存中,从而将远端缓存服务器中的网络应用数据写入到本地缓存服务器,将网络应用数据类型从非热门数据转化为热门数据,从而使客户端快速读取列表数据,提高了对数据的访问效率。可选地,远端缓存服务器仍然存储原网络应用数据,客户端读取列表数据时,优先读取本地缓存服务器中的网络应用数据的列表数据。
当本地缓存服务器的数据缓存量达到本地缓存服务器的最大空间时,也即,本地缓存服务器的数据缓存量达到预时设缓存量时,将不能存储新的热门数据,可以清除本地缓存服务器中的数据。图5是根据本发明实施例的清除本地缓存服务器中的数据的方法的流程图,如图5所示,该清除本地缓存服务器中的数据的方法包括以下步骤:
步骤S502,检测本地缓存服务器的数据缓存量。
步骤S504,判断本地缓存服务器的数据缓存量是否达到预设缓存量。
步骤S506,如果判断出本地缓存服务器的数据缓存量达到预设缓存量,则清除本地缓存服务器中被访问次数最少的预定量的数据。
优选地,在将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器之后,数据缓存方法还包括:检测本地缓存服务器的数据缓存量;在检测到本地缓存服务器的数据缓存量之后,判断本地缓存服务器的数据缓存量是否达到预设缓存量;如果判断出本地缓存服务器的数据缓存量达到预设缓存量,则查找本地缓存服务器中被访问次数最少的数据,根据预设缓存量,清除预定量的本地缓存服务器中被访问次数最少的数据。可选地,随着时间的推延,本地缓存服务器中的热门数据可能渐渐地不被客户端访问,设定超时时间,此超时时间为热门数据不被客户端访问的时间段,如果判断出本地缓存服务器的数据缓存量达到预设缓存量,则查找本地缓存服务器中达到超时时间的数据,根据预设缓存量,清除预定量的本地缓存服务器中达到超时时间的热门数据,优选地,清除预定量的被访问次数最少并且达到超时时间的数据,从而使本地缓存服务器腾出空间存储新的缓存数据,实现数据的替换。
可选地,在判断出本地缓存服务器的数据缓存量达到预设缓存量,清除预定量的本地缓存服务器中的数据可以采用近期最少使用算法(Least Recently Used,简称为LRU)来实现。LRU算法是可以实现内存管理的页面置换算法。具体而言,对于在内存中但又不使用的数据块可以称为LRU数据块,操作系统会判断哪些数据属于LRU数据块,将属于LRU数据块的数据块移出内存,从而腾出空间来加载新的数据块。操作系统判断出本地缓存服务器中的LRU数据块,将其移出本地缓存服务器的共享内存空间,从而腾出空间来加载新的缓存数据,实现了内存缓存区分页页面数据的置换,提高了缓存数据的存储效率,进而提高了数据的访问效率。
本发明实施例采用从游戏应用数据库读取网络应用数据,其中,网络应用数据包括网络资讯数据,然后对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据,再将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务,进而达到了提高数据访问效率和降低数据缓存成本的技术效果。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台客户端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
本发明实施例还提供了一种用于实施上述数据缓存方法的数据缓存装置,可选地,在本实施例中,该数据缓存装置可以应用于如图1所示的服务器102和客户端104所构成的硬件环境中。本发明实施例的数据缓存装置可以由服务器102来实现,也可以由客户端104来实现,还可以是由服务器102和客户端104共同实现。
图6是根据本发明第一实施例的用于游戏应用的数据缓存装置的示意图,如图6所示,该数据缓存装置包括:读取单元10,划分单元20和存储单元30。
读取单元10,用于从游戏应用数据库读取网络应用数据。根据不同的业务场景,APP提供不同的网络应用数据,其中,包括网络资讯数据。网络资讯数据为具有时效性和地域性能的能给消费者带来价值的信息。优选地,读取单元10通过本地缓存服务器从游戏应用数据库DB中读取网络应用数据。
划分单元20,用于对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据。网络应用数据包括热门数据和非热门数据两种数据类型。通过读取单元10从游戏应用数据库读取网络应用数据之后,划分单元20按照预先设定的划分规则对网络应用数据进行划分,将满足预先设定的热门数据类型的网络应用数据划分为热门数据,将满足预先设定的非热门数据类型的网络应用数据划分为非热门数据。划分单元20还可以根据网络应用数据的访问量对网络应用数据进行划分。设定预设访问量,该预设访问量可以根据整个网络应用数据的访问量按照统计学的原理来确定,作为划分网络应用数据为热门数据和非热门数据的界限。划分单元20将访问量达到预设访问量的网络应用数据划分为热门数据,将访问量未达到预设访问量的网络应用数据划分为非热门数据。
存储单元30,用于将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务。
在划分单元20对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据之后,存储单元30根据网络应用数据是否为热门数据,将网络应用数据存储在不同的介质。比如,存储单元30将网络应用数据存储在本地缓存服务器,本地缓存服务器用于提供网络访问服务。具体而言,存储单元30将网络应用数据写入本地的共享内存的读写列表中,得到本地缓存服务器中的缓存数据;存储单元30还用于将网络应用数据存储在远端缓存服务器,远端缓存服务器用于提供网络访问服务,可以为远端Cache服务器,具体而言,存储单元30将网络应用数据写入远端的Redis列表中,得到远端缓存服务器中的缓存数据。
优选地,存储单元30将热门数据存储在本地缓存服务器,具体而言,将热门数据写入本地的共享内存的读写列表中;存储单元30将非热门数据写入远端缓存服务器,具体而言,将非热门数据写入远端的Redis列表中。
该实施例的存储单元30将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务,达到了客户端访问列表数据,根据访问数据的数据类型来从不同的介质中读取数据给客户端回包的目的,提高了数据访问效率,降低了数据缓存成本。
图7是根据本发明第二实施例的用于游戏应用的数据缓存装置的示意图,在本发明的一个实施例中,该数据缓存装置还包括:第一检测单元40,第一判断单元50和写入单元60。如图7所示,该数据缓存装置包括:读取单元10,划分单元20,存储单元30,第一检测单元40,第一判断单元50和写入单元60。
第一检测单元40,用于检测远端缓存服务器中非热门数据的被访问次数。
第一判断单元50,用于判断非热门数据的被访问次数是否达到预设次数。
写入单元60,用于在判断出非热门数据的被访问次数达到预设次数,将非热门数据写入到本地缓存服务器。
存储单元30将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器之后,第一检测单元40检测远端缓存服务器中非热门数据的被访问次数。第一判断单元50在判断出非热门数据的被访问次数达到预设次数,则非热门数据可以作为热门数据,写入单元60将非热门数据写入到本地缓存服务器,如果第一判断单元50判断出非热门数据的被访问次数没有到预设次数,则仍将其存储在远端缓存服务器中。具体而言,写入单元60将被访问次数达到预设次数的非热门数据对应的分页页面数据写入到本地的共享内存中,从而将远端缓存服务器中的网络应用数据写入到本地缓存服务器,将网络应用数据类型从非热门数据转化为热门数据,从而使客户端快速读取列表数据,提高了对数据的访问效率。
图8是根据本发明第三实施例的用于游戏应用的数据缓存装置的示意图,在本发明的一个实施例中,该数据缓存装置还包括:第二检测单元70,第二判断单元80和清除单元90。如图8所示,该数据缓存装置包括:读取单元10,划分单元20,存储单元30,第二检测单元70,第二判断单元80和清除单元90。
第二检测单元70,用于检测本地缓存服务器的数据缓存量。
第二判断单元80,用于判断本地缓存服务器的数据缓存量是否达到预设缓存量。
清除单元90,用于在判断出本地缓存服务器的数据缓存量达到预设缓存量,则清除本地缓存服务器中被访问次数最少的预定量的数据。
存储单元30在将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器之后,第二检测单元70检测本地缓存服务器的数据缓存量;在第二检测单元70检测到本地缓存服务器的数据缓存量之后,第二判断单元80判断本地缓存服务器的数据缓存量是否达到预设缓存量;如果判断出本地缓存服务器的数据缓存量达到预设缓存量,则查找本地缓存服务器中被访问次数最少的数据,根据预设缓存量,清除单元90清除预定量的本地缓存服务器中被访问次数最少的数据。可选地,随着时间的推延,本地缓存服务器中的热门数据可能渐渐地不被客户端访问,设定超时时间,此超时时间为热门数据不被客户端访问的时间段,如果判断出本地缓存服务器的数据缓存量达到预设缓存量,则查找本地缓存服务器中达到超时时间的数据,根据预设缓存量,清除单元90清除预定量的本地缓存服务器中达到超时时间的热门数据,优选地,清除单元90清除预定量的被访问次数最少并且达到超时时间的数据,从而使本地缓存服务器腾出空间存储新的缓存数据,实现数据的替换。
本发明实施例通过读取单元10从游戏应用数据库读取网络应用数据,其中,网络应用数据包括网络资讯数据,然后通过划分单元20对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据,再通过存储单元30将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务,进而达到了提高数据访问效率和降低数据缓存成本的技术效果。
图9是根据本发明第四实施例的用于游戏应用的数据缓存装置的示意图,在本发明的一个实施例中,该数据缓存装置还包括:第三判断单元100。如图9所示,该数据缓存装置包括:读取单元10,划分单元20,存储单元30和第三判断单元100。
第三判断单元100,用于多个本地缓存服务器通过公共时钟同步判断更新时间是否达到预设更新时。
其中,读取单元10用于使多个本地缓存服务器在通过公共时钟判断出更新时间达到预设更新时间时,从游戏应用数据库读取网络应用数据执行同步数据更新。
本地缓存服务器包括多个本地缓存服务器。在读取单元10从游戏应用数据库读取网络应用数据之前,多个本地缓存服务器定期检查是否要从游戏应用数据库DB中读取网络应用数据执行同步更新。具体而言,多个本地缓存服务器通过第三判断单元100根据公共时钟同步判断更新时间是否达到预设更新时间。当第三判断单元100在通过公共时钟同步判断更新时间达到预设更新时间时,则读取单元10从游戏应用数据库DB中读取网络应用数据执行同步更新。
图10是根据本发明第五实施例的用于游戏应用的数据缓存装置的示意图,在本发明的一个实施例中,划分单元20包括:获取模块21,汇总模块22和划分模块。如图10所示,该数据缓存装置包括:读取单元10,划分单元20和存储单元30,其中,划分单元20还包括:获取模块21,汇总模块22和划分模块。
获取模块21,用于在从游戏应用数据库读取网络资讯数据之后,获取网络资讯数据的附加信息。
汇总模块22,用于将网络资讯数据和附加信息进行汇总处理,得到汇总数据。
划分模块23,用于将汇总数据进行划分,将汇总数据划分为热门数据和非热门数据。
网络资讯数据通常带有附加信息,读取单元10从游戏应用数据库读取网络资讯,比如,读取对网络资讯数据的评论、点赞、转发、分享、举报、昵称等信息。在读取单元10从游戏应用数据库读取网络资讯数据之后,获取模块21获取网络资讯数据的附加信息。通过汇总模块22将网络资讯数据和附加信息进行汇总处理,得到包括网络资讯数据和网络资讯数据的附加信息的汇总数据。优选地,读取单元10从游戏应用数据库分页读取网络资讯数据之后,获取模块21获取分页网络资讯数据的附加信息。汇总模块22将分页的网络资讯数据和分页附加信息进行汇总处理,得到包括网络资讯数据和网络资讯数据的附加信息的分页汇总数据。划分模块23将汇总数据进行划分,将汇总数据划分为热门数据和非热门数据。
本发明实施例的数据缓存装置通过读取单元10从游戏应用数据库读取网络应用数据,然后通过划分单元20对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据,再通过存储单元30将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务,进而达到了提高数据访问效率和降低数据缓存成本的技术效果。
实施例3
本发明实施例还提供了一种用于游戏应用的数据缓存系统,需要说明的是,该数据缓存系统可用于实施上述数据缓存方法和数据缓存装置,如图11所示,其中,图11是根据本发明第一实施例的用于游戏应用的数据缓存系统的示意图,该数据缓存系统包括本地缓存服务器100和远端缓存服务器200,其中,本地缓存服务器100和远端缓存服务器200用于提供网络访问服务。
本地缓存服务器100,可以用于在从游戏应用数据库读取网络应用数据之前,通过公共时钟同步判断更新时间是否达到预设更新时间,当多个本地缓存服务器100在通过公共时钟判断出更新时间达到预设更新时间时,从游戏应用数据库读取网络应用数据执行同步数据更新。在多个本地缓存服务器100从游戏应用数据库读取网络应用数据执行同步数据更新之后,通过本地缓存服务器100从游戏应用数据库读取网络应用数据,对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据,其中,将热门数据存储在本地,将非热门数据存储在远端缓存服务器200。可选地,本地缓存服务器100还用于检测本地的数据缓存量,判断本地的数据缓存量是否达到预设缓存量,在判断出本地缓存服务器100的数据缓存量达到预设缓存量时,清除本地缓存服务器100中被访问次数最少的预定量的数据。本地缓存服务器100还用于检测非热门数据的被访问次数,判断非热门数据的被访问次数是否达到预设次数,在判断出非热门数据的被访问次数达到预设次数,将非热门数据写入到本地中。
该实施例的数据缓存系统的本地缓存服务器100和远端缓存服务器200可以用于提供网络访问服务。多个本地缓存服务器100在通过公共时钟判断出更新时间达到预设更新时间时,从游戏应用数据库读取网络应用数据执行同步数据更新,然后通过本地缓存服务器100从游戏应用数据库DB读取网络应用数据,将读取到的网络应用数据划分为热门数据和非热门数据,其中,将热门数据存储在本地,将非热门数据存储在远端缓存服务器200中,从而达到了将热门数据和非热门数据缓分级存储在不同介质的目的。本地缓存服务器100还可以清除本地缓存服务器中被访问次数最少的预定量的数据,以腾出空间存储新的缓存数据,本地缓存服务器100还可以将非热门数据写入到本地缓存服务器100中,达到了提高数据访问效率的技术效果,实现了降低数据缓存成本的目的。
图12是根据本发明第二实施例的用于游戏应用的数据缓存系统的示意图,如图12所示,该数据缓存系统包括本地缓存服务器100,远端缓存服务器200和客户端104。
图13是根据本发明实施例的用于数据缓存系统的数据缓存方法的流程图,如图13所示,该数据缓存系统可以用于执行以下步骤:
步骤S1302,从游戏应用数据库读取网络应用数据。
在从游戏应用数据库读取网络应用数据之前,多个本地缓存服务器100定期检查是否要从游戏应用数据库DB中读取网络应用数据执行同步更新。当多个本地缓存服务器100在通过公共时钟同步判断更新时间达到预设更新时间时,则多个本地缓存服务器100从游戏应用数据库DB中读取网络应用数据执行同步更新。可选地,网络应用数据包括网络资讯数据,网络资讯数据通常带有附加信息,本地缓存服务器100将网络资讯数据和附加信息进行汇总处理,得到包括网络资讯数据和网络资讯数据的附加信息的汇总数据。
步骤S1304,对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据。
本地缓存服务器100按照预先设定的划分规则对网络应用数据进行划分,将满足预先设定的热门数据类型的网络应用数据划分为热门数据,将满足预先设定的非热门数据类型的网络应用数据划分为非热门数据;或者,本地缓存服务器100根据网络应用数据的访问量对网络应用数据进行划分,将访问量达到预设访问量的网络应用数据划分为热门数据,将访问量未达到预设访问量的网络应用数据划分为非热门数据。
步骤S1306,将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务。
优选地,在将热门数据存储在本地缓存服务器100,非热门数据存储在远端缓存服务器200之后,本地缓存服务器100检测非热门数据的被访问次数,然后判断非热门数据的被访问次数是否达到预设次数,如果判断出非热门数据的被访问次数达到预设次数,则将非热门数据写入到本地中。
优选地,在将热门数据存储在本地缓存服务器100,非热门数据存储在远端缓存服务器200之后,本地缓存服务器100检测本地缓存服务器的数据缓存量,然后判断本地缓存服务器100的数据缓存量是否达到预设缓存量,如果判断出本地缓存服务器100的数据缓存量达到预设缓存量,则清除本地缓存服务器100中被访问次数最少的预定量的数据,从而腾出空间存储新的缓存数据。
举例而言,在本地缓存服务器100开始更新数据时,本地缓存服务器100从游戏应用数据库DB分页读取各类网络资讯数据。本地缓存服务器100从游戏应用数据库分页读取网络资讯数据之后,获取分页网络资讯数据的附加信息,将分页的网络资讯数据和分页附加信息进行汇总处理,得到包括网络资讯数据和网络资讯数据的附加信息的分页汇总数据,将汇总数据进行划分,将汇总数据划分为热门数据和非热门数据。分页数据汇总成功之后,根据网络资讯数据是否为热门数据,将网络资讯数据存储在不同的介质,也即,定期将热门数据写入本地缓存服务器100的本地共享内存的读写列表,非热门数据定期写入远端缓存服务器200的后端的Redis列表。由于写入的数据量比较大,写入过程比较长,写入列表需要与读取列表分离开,数据写入完成之后置换读写列表。
客户端104访问列表数据时,也即,读取网络资讯数据时,本地缓存服务器100根据请求数据类型,分别从本地缓存服务器100和远端缓存服务器200读取列表数据给客户端104回包。当非热门数据被访问次数达到预设次数,本地缓存服务器100即把相应的分页汇总数据写入到本地,作为热门数据,供客户端104快速读取。本地缓存服务器100中缓存的数据需要设置超时时间,如果热门数据在本地缓存服务器100中存储的长度达到本地缓存服务器100所允许的最大长度,则按照LRU算法将最近最少被访问或者达到超时时间的缓存数据替换出去。
本发明实施例的数据处理系统通过公共时钟在同步判断出更新时间达到预设更新时间时,多个本地缓存服务器100从游戏应用数据库DB中读取网络应用数据执行同步更新,然后从游戏应用数据库DB中读取网络应用数据,对读取到的网络应用数据进行划分,从而将网络应用数据划分为热门数据和非热门数据,实现了将热门数据存储在本地缓存服务器100,将非热门数据存储在远端缓存服务器的200的分级存储的目的,降低了客户端104和本地缓存服务器100,或者客户端104与远端缓存服务器200之间从发出请求到收到回包的时间间隔,进而达到了提高数据访问效率的技术效果,实现了降低数据缓存成本的目的。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
实施例4
本发明实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行本发明实施例的数据缓存方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于本发明实施例3中的数据缓存系统上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
步骤一,从游戏应用数据库读取网络应用数据。
步骤二,对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据。
步骤三,将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,其中,本地缓存服务器和远端缓存服务器用于提供网络访问服务。
本发明实施例通过从游戏应用数据库中读取网络应用数据,然后对读取到的网络应用数据进行划分,将网络应用数据划分为热门数据和非热门数据这两种数据类型,网络应用数据通过本地缓存服务器和远端缓存服务器提供网络访问服务,其中,将热门数据存储在本地缓存服务器,将非热门数据存储在远端缓存服务器,从而达到了在不影响客户端体验的前提下,对网络应用数据进行分级存储的目的,实现了对网络应用数据的快速访问。此外,多个本地缓存服务器通过公共时钟同步判断缓存数据的更新时间是否达到预设更新时间,降低了开发的复杂性和开发成本,从而实现了兼顾数据访问效率和数据缓存成本的技术效果。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行本发明实施例1中的数据缓存方法的程序代码。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种用于游戏应用的数据缓存方法,其特征在于,包括:
从游戏应用数据库读取网络应用数据,其中,所述游戏应用数据库用于存储预设游戏应用的网络应用数据;
对读取到的网络应用数据进行划分,将所述网络应用数据划分为热门数据和非热门数据,其中,所述热门数据为用于供客户端从本地拉取的数据,所述非热门数据为用于供客户端从远端拉取的数据;以及
将所述热门数据存储在本地缓存服务器,将所述非热门数据存储在远端缓存服务器,其中,所述本地缓存服务器用于从本地为客户端提供网络访问服务,所述远端缓存服务器用于从远端为客户端提供网络访问服务;
其中,在将所述热门数据存储在本地缓存服务器,将所述非热门数据存储在远端缓存服务器之后,所述数据缓存方法还包括:
检测所述本地缓存服务器的数据缓存量;
判断所述本地缓存服务器的数据缓存量是否达到预设缓存量;以及
如果判断出所述本地缓存服务器的数据缓存量达到预设缓存量,则清除所述本地缓存服务器中超过预设时间的被访问次数最少的预定量的数据,所述预设时间用于表示所述热门数据未被访问的预设时间段;
其中,所述从游戏应用数据库读取网络应用数据,包括:从所述游戏应用数据中分页读取所述网络应用数据;
所述本地缓存服务器包括多个本地缓存服务器,在从游戏应用数据库读取网络应用数据之前,所述数据缓存方法还包括:所述多个本地缓存服务器通过公共时钟同步判断更新时间是否达到预设更新时间,其中,所述多个本地缓存服务器在通过所述公共时钟判断出更新时间达到所述预设更新时间时,从所述游戏应用数据库读取所述网络应用数据执行同步数据更新。
2.根据权利要求1所述的方法,其特征在于,对读取到的网络应用数据进行划分,将所述网络应用数据划分为热门数据和非热门数据包括:
按照预先设定的划分规则对所述网络应用数据进行划分,将满足预先设定的热门数据类型的网络应用数据划分为所述热门数据,将满足预先设定的非热门数据类型的网络应用数据划分为所述非热门数据;或者,
根据所述网络应用数据的访问量对所述网络应用数据进行划分,将访问量达到预设访问量的网络应用数据划分为所述热门数据,将访问量未达到所述预设访问量的网络应用数据划分为所述非热门数据。
3.根据权利要求1所述的方法,其特征在于,在将所述热门数据存储在本地缓存服务器,将所述非热门数据存储在远端缓存服务器之后,所述数据缓存方法还包括:
检测所述远端缓存服务器中所述非热门数据的被访问次数;
判断所述非热门数据的被访问次数是否达到预设次数;以及
如果判断出所述非热门数据的被访问次数达到所述预设次数,将所述非热门数据写入到所述本地缓存服务器。
4.根据权利要求1所述的方法,其特征在于,所述网络应用数据包括网络资讯数据,对读取到的网络应用数据进行划分,将所述网络应用数据划分为热门数据和非热门数据包括:
在从游戏应用数据库读取所述网络资讯数据之后,获取所述网络资讯数据的附加信息;
将所述网络资讯数据和所述附加信息进行汇总处理,得到汇总数据;
将所述汇总数据进行划分,将所述汇总数据划分为热门数据和非热门数据。
5.一种用于游戏应用的数据缓存装置,其特征在于,包括:
读取单元,用于从游戏应用数据库读取网络应用数据,其中,所述游戏应用数据库用于存储预设游戏应用的网络应用数据;
划分单元,用于对读取到的网络应用数据进行划分,将所述网络应用数据划分为热门数据和非热门数据,所述热门数据为用于供客户端从本地拉取的数据,所述非热门数据为用于供客户端从远端拉取的数据;以及
存储单元,用于将所述热门数据存储在本地缓存服务器,将所述非热门数据存储在远端缓存服务器,其中,所述本地缓存服务器用于从本地为客户端提供网络访问服务,所述远端缓存服务器用于从远端为客户端提供网络访问服务;
第二检测单元,用于检测所述本地缓存服务器的数据缓存量;
第二判断单元,用于判断所述本地缓存服务器的数据缓存量是否达到预设缓存量;以及
清除单元,用于在判断出所述本地缓存服务器的数据缓存量达到预设缓存量,则清除所述本地缓存服务器中超过预设时间的被访问次数最少的预定量的数据,所述预设时间用于表示所述热门数据未被访问的预设时间段;
所述读取单元,还用于从所述游戏应用数据中分页读取所述网络应用数据;
所述本地缓存服务器包括多个本地缓存服务器,所述装置还包括:第三判断单元,用于所述多个本地缓存服务器通过公共时钟同步判断更新时间是否达到预设更新时间,其中,所述读取单元用于使所述多个本地缓存服务器在通过所述公共时钟判断出更新时间达到所述预设更新时间时,从所述游戏应用数据库读取所述网络应用数据,执行同步数据更新。
6.根据权利要求5所述的装置,其特征在于,
所述划分单元用于按照预先设定的划分规则对所述网络应用数据进行划分,将满足预先设定的热门数据类型的网络应用数据划分为所述热门数据,将满足预先设定的非热门数据类型的网络应用数据划分为所述非热门数据;或者,
所述划分单元用于根据所述网络应用数据的访问量对所述网络应用数据进行划分,将访问量达到预设访问量的网络应用数据划分为所述热门数据,将访问量未达到所述预设访问量的网络应用数据划分为所述非热门数据。
7.根据权利要求5所述的装置,其特征在于,还包括:
第一检测单元,用于检测所述远端缓存服务器中所述非热门数据的被访问次数;
第一判断单元,用于判断所述非热门数据的被访问次数是否达到预设次数;以及
写入单元,用于在判断出所述非热门数据的被访问次数达到所述预设次数,将所述非热门数据写入到所述本地缓存服务器。
8.根据权利要求5所述的装置,其特征在于,所述网络应用数据包括网络资讯数据,所述划分单元包括:
获取模块,用于在从游戏应用数据库读取所述网络资讯数据之后,获取所述网络资讯数据的附加信息;
汇总模块,用于将所述网络资讯数据和所述附加信息进行汇总处理,得到汇总数据;
划分模块,用于将所述汇总数据进行划分,将所述汇总数据划分为热门数据和非热门数据。
9.一种用于游戏应用的数据缓存系统,其特征在于,包括本地缓存服务器和远端缓存服务器,
所述本地缓存服务器用于从游戏应用数据库读取网络应用数据,对读取到的网络应用数据进行划分,将所述网络应用数据划分为热门数据和非热门数据,将所述热门数据存储在本地缓存服务器,将所述非热门数据存储在远端缓存服务器,所述远端缓存服务器用于存储所述非热门数据,其中,所述游戏应用数据库用于存储预设游戏应用的网络应用数据,所述热门数据为用于供客户端从本地拉取的数据,所述非热门数据为用于供客户端从远端拉取的数据,所述本地缓存服务器用于从本地为客户端提供网络访问服务,所述远端缓存服务器用于从远端为客户端提供网络访问服务;
其中,所述本地缓存服务器还用于检测本地缓存服务器的数据缓存量,判断本地缓存服务器的数据缓存量是否达到预设缓存量,在判断出所述本地缓存服务器的数据缓存量达到所述预设缓存量时,清除所述本地缓存服务器中超过预设时间的被访问次数最少的预定量的数据,所述预设时间用于表示所述热门数据未被访问的预设时间段;
所述本地缓存服务器还用于从所述游戏应用数据中分页读取所述网络应用数据;
所述本地缓存服务器包括多个本地缓存服务器,所述多个本地缓存服务器还用于通过公共时钟同步判断更新时间是否达到预设更新时间,其中,所述读取单元用于使所述多个本地缓存服务器在通过所述公共时钟判断出更新时间达到所述预设更新时间时,从所述游戏应用数据库读取所述网络应用数据,执行同步数据更新。
10.根据权利要求9所述的数据缓存系统,其特征在于,所述本地缓存服务器还用于检测所述非热门数据的被访问次数,判断所述非热门数据的被访问次数是否达到预设次数,在判断出所述非热门数据的被访问次数达到所述预设次数,将所述非热门数据写入到所述本地缓存服务器。
11.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510728706.4A CN106649349B (zh) | 2015-10-30 | 2015-10-30 | 用于游戏应用的数据缓存方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510728706.4A CN106649349B (zh) | 2015-10-30 | 2015-10-30 | 用于游戏应用的数据缓存方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106649349A CN106649349A (zh) | 2017-05-10 |
CN106649349B true CN106649349B (zh) | 2021-07-09 |
Family
ID=58810016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510728706.4A Active CN106649349B (zh) | 2015-10-30 | 2015-10-30 | 用于游戏应用的数据缓存方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106649349B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688440A (zh) * | 2017-08-30 | 2018-02-13 | 郑州云海信息技术有限公司 | 一种数据的存储方法及装置 |
CN107800795A (zh) * | 2017-10-30 | 2018-03-13 | 中国联合网络通信集团有限公司 | 区块信息的处理方法及装置 |
CN108279854A (zh) * | 2018-01-22 | 2018-07-13 | 珠海格力电器股份有限公司 | 数据存储方法、装置、显示板和设备机组 |
CN108744504B (zh) * | 2018-05-17 | 2022-06-24 | 网易(杭州)网络有限公司 | 游戏数据的处理方法及装置、游戏服务器、游戏系统 |
CN110032691A (zh) * | 2018-12-05 | 2019-07-19 | 香港乐蜜有限公司 | 缓存数据的清除方法、装置及设备 |
US11151035B2 (en) | 2019-05-12 | 2021-10-19 | International Business Machines Corporation | Cache hit ratios for selected volumes within a storage system |
US11237730B2 (en) | 2019-05-12 | 2022-02-01 | International Business Machines Corporation | Favored cache status for selected volumes within a storage system |
US11163698B2 (en) | 2019-05-12 | 2021-11-02 | International Business Machines Corporation | Cache hit ratios for selected volumes using synchronous I/O |
US11169919B2 (en) | 2019-05-12 | 2021-11-09 | International Business Machines Corporation | Cache preference for selected volumes within a storage system |
US11176052B2 (en) | 2019-05-12 | 2021-11-16 | International Business Machines Corporation | Variable cache status for selected volumes within a storage system |
CN110704336B (zh) * | 2019-09-26 | 2021-10-15 | 绿盟科技集团股份有限公司 | 一种数据缓存方法及装置 |
CN111221861B (zh) * | 2019-12-31 | 2023-06-02 | 武汉中海庭数据技术有限公司 | 一种本地缓存与数据库数据同步方法和装置 |
CN111556086B (zh) * | 2020-01-02 | 2022-04-29 | 阿里巴巴集团控股有限公司 | 对象存储管理方法、装置、电子设备及计算机存储介质 |
CN113688338A (zh) * | 2020-05-19 | 2021-11-23 | 上海惠芽信息技术有限公司 | 用户数据的处理方法、处理装置及计算机存储介质 |
CN112187874B (zh) * | 2020-09-09 | 2023-07-04 | 广州市妇女儿童医疗中心(广州市妇幼保健院、广州市儿童医院、广州市妇婴医院、广州市妇幼保健计划生育服务中心) | 哺乳信息传输方法、装置、计算机设备和存储介质 |
CN113688158A (zh) * | 2021-09-07 | 2021-11-23 | 京东科技控股股份有限公司 | 业务规则校验的处理方法、装置、设备、系统及介质 |
CN113961510B (zh) * | 2021-10-19 | 2023-11-03 | 北京百度网讯科技有限公司 | 一种文件处理方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101326496A (zh) * | 2005-12-07 | 2008-12-17 | 国际商业机器公司 | 持续保护数据的装置、系统和方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102014158B (zh) * | 2010-11-29 | 2013-07-10 | 北京兴宇中科科技开发股份有限公司 | 一种云存储服务客户端高效细粒度数据缓存系统与方法 |
US8473459B2 (en) * | 2011-02-28 | 2013-06-25 | International Business Machines Corporation | Workload learning in data replication environments |
CN104426979B (zh) * | 2013-09-04 | 2018-02-16 | 中国科学院声学研究所 | 一种基于社交关系的分布式缓存调度系统与方法 |
CN104683485B (zh) * | 2015-03-25 | 2018-01-30 | 重庆邮电大学 | 一种基于c‑ran的互联网内容缓存预加载方法和系统 |
-
2015
- 2015-10-30 CN CN201510728706.4A patent/CN106649349B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101326496A (zh) * | 2005-12-07 | 2008-12-17 | 国际商业机器公司 | 持续保护数据的装置、系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106649349A (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106649349B (zh) | 用于游戏应用的数据缓存方法、装置和系统 | |
CN106911780B (zh) | 业务id生成方法、装置及系统 | |
US9009103B2 (en) | Fingerprint-based, intelligent, content pre-fetching | |
CN109947668B (zh) | 存储数据的方法和装置 | |
US10489476B2 (en) | Methods and devices for preloading webpages | |
CN201682522U (zh) | 会话信息存储系统及应用服务器 | |
CN107784516A (zh) | 广告投放方法和装置 | |
CN110795395B (zh) | 文件部署系统和文件部署方法 | |
CN107197359B (zh) | 视频文件缓存方法及装置 | |
CN107526828B (zh) | 页面信息推荐方法和装置 | |
CN104657401A (zh) | 一种web缓存的更新方法 | |
CN103336815A (zh) | 网络广告推送的系统和方法 | |
CN103473326A (zh) | 一种提供搜索建议的方法和装置 | |
CN106681990A (zh) | 一种移动云存储环境下缓存数据的预取方法 | |
CN106210022A (zh) | 一种用于处理论坛高并发数据请求的系统和方法 | |
CN106446075A (zh) | 页面请求处理方法及装置 | |
CN113010549A (zh) | 基于异地多活系统的数据处理方法、相关设备及存储介质 | |
CN104253868A (zh) | 一种云存储数据同步的方法及装置 | |
CN104077291B (zh) | 用户生成内容访问次数的发布方法、客户端及系统 | |
CN104468399A (zh) | 数据传输方法、装置和服务器 | |
CN110784498A (zh) | 一种个性化数据容灾方法及装置 | |
AU2020203282B2 (en) | Method and system for matching multi-dimensional data units in electronic information system | |
CN117473011A (zh) | 数据同步方法、装置以及混合缓存系统 | |
CN111767481A (zh) | 访问处理方法、装置、设备和存储介质 | |
CN103491124A (zh) | 一种对彩信数据进行处理的方法及分布式缓存系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |