一种缓存调度方法和系统技术方案

技术编号:7071163 阅读:236 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种缓存调度方法,包括:步骤1、根据用户访问历史记录进行分析,得到用户访问模式;步骤2、根据用户访问模式,在时间接近用户的高访问概率时间段时将用户信息调入缓存,在其已经访问或进入低访问概率时调出缓存。本发明专利技术还提供一种缓存调度系统。通过本发明专利技术提供的一种缓存调度方法及系统,可以解决在高并发但低重复的访问时,提高缓存访问的命中率,实现缓存存储的有效使用,提升了认证系统的业务处理速度。

【技术实现步骤摘要】

本专利技术涉及一种缓存中对象调度领域,特别是涉及一种适用于高并发低重复访问的缓存调度方法及系统。
技术介绍
目前,在电信运营商使用的网络中,经常需要使用用户认证系统对用户进行认证, 其中,认证系统中用户信息经常需要被调度调入调出缓存。现有的缓存调度是采用以下的方法在系统第一次使用数据时将数据调入缓存,数据在一段时间内一直保持在缓存中,通过算法计算出特定的数据在重复使用率过低时调出缓存。这种调度方法适用于重复访问比较频繁的情况下,但是在重复访问频率非常低或一定时间内如果有访问也只有一次,或高并发但低重复访问的情况下,这种调度方法会造成系统的效率非常低下,降低缓存存储的有效使用率,降低认证系统的业务处理速度。所以,有必要提出一种新的缓存调度方法,以解决在高并发但低重复的访问时,提高缓存访问的命中率,实现缓存存储的有效使用,提升了认证系统的业务处理速度。
技术实现思路
本专利技术的目的在于提供一种缓存调度方法及系统,可以解决在高并发但低重复的访问时,提高缓存访问的命中率,实现缓存存储的有效使用,提升了认证系统的业务处理速度。为解决以上技术问题,本专利技术提供一种缓存调度方法,包括,步骤1、根据用户访问历史记录进行分析,得到用户访问模式;步骤2、根据用户访问模式,在时间接近用户的高访问概率时间段时将用户信息调入缓存,在其已经访问或进入低访问概率时调出缓存。进一步地,所述步骤1中,使用ABC分类方法与用户最近访问时间计算得到用户访问模式。进一步地,所述步骤1具体包括步骤1. 1,取用户最近的一段时间的访问历史记录,计算周期内的一段t时间内用户的访问概率;步骤1. 2,如果用户在t时间段内的访问概率超过预设值,则将t时间前后都减去一个小的时间,重新计算t时间段内的用户访问概率;步骤1. 3,重复步骤1. 2,直到计算的用户访问概率小于预设值,再将上次计算时的t记录到用户访问模式表中。进一步地,所述步骤2中的调入缓存,具体包括步骤2. 1,取不在缓存中的并且在周期内没有访问过的用户列表;步骤2. 2,如果在下一个缓存调度周期内和用户的访问模式表中的用户高概率访问时间段有重叠,则将用户信息调入缓存。进一步地,所述步骤2中的调出缓存,具体包括步骤2. 3,取在缓存中用户列表;步骤2. 4,如果在下一个缓存调度周期内和用户的访问模式表中的用户高概率访问时间段没有重叠,则将用户信息调出缓存。进一步地,所述方法进一步包括步骤3、将用户的最近访问时间记录用户访问日ο为解决以上技术问题,本专利技术还提供一种缓存调度系统,包括用户访问历史分析模块、缓存调度模块、缓存数据库模块,所述用户访问历史分析模块,根据用户访问历史记录进行分析,得到用户访问模式;所述缓存调度模块,根据用户访问模式,在时间接近用户的高访问概率时间段时将用户信息调入缓存数据库模块,在其已经访问或进入低访问概率时调出缓存数据库模块。进一步地,所述缓存调度模块包括数据调入子模块和数据调出子模块,数据调入子模块,根据获取用户访问模块数据,在用户高可能性访问时间段将用户信息调入缓存数据库模块;数据调出子模块,用于将已经访问或进入低访问概率时的用户调出缓存数据库模块。进一步地,所述系统还包括用户访问模式存储模块,用于记录经过用户访问历史分析模块分析得到的分析用户访问模式。进一步地,所述系统还包括用户访问日志模块,用于记录用户访问历史记录信息。进一步地,所述系统还包括对外接口模块,用于与外部系统进行接口,以及将使用用户数据后记录到用户访问日志模块;以及发通知给缓存调度模块,通知所请求的数据在当前时间访问过。与现有技术相比,本专利技术提供的一种缓存调度方法及系统,是基于用户的以往使用记录进行分析,得出用户的高概率访问时间段和低概率时间段,对于高并发低重复访问场景下,在时间接近用户的高访问概率时间段时调到缓存,在其已经访问或进入低访问概率时调出缓存。这种调度策略在高并发低重复访问场景下提高了用户访问时的缓冲命中率,实现缓存存储的有效使用,提升了认证系统的认证处理能力,改善了用户体验。并且, 缓存系统调度模块和用户数据分析模块独立部署,不影响业务系统处理能力。经过试验, 未使用本专利技术的方法时,单个系统缓存的命中率30%左右,系统并发能力达到每秒1200次数据访问,使用此方法和装置后,缓存的命中率提升到70%左右,系统的并发能力达到每秒 2200次数据访问。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本专利技术的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中图1是本专利技术提供一种适用于高并发低重复访问的缓存调度系统的结构示意图;图2是本专利技术提供一种适用于高并发低重复访问的缓存调度方法的流程图。具体实施例方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,本专利技术提供一种适用于高并发低重复访问的缓存调度系统,是对基于用户的以往使用记录进行分析,得出用户的高概率访问时间段和低概率时间段,对于高并发低重复访问场景下,在时间接近用户的高访问概率时间段时调到缓存,在其已经访问或进入低访问概率时调出缓存。这种调度策略在高并发低重复访问场景下提高了用户访问时的缓冲命中率,提升了认证系统的认证处理能力。该系统包括用户访问历史分析模块10、缓存调度模块20、用户访问模式存储模块30、用户访问日志模块40、对外接口模块50、缓存数据库模块60、业务数据库模块70。用户访问历史分析模块10,对根据用户访问日志模块40中存储的用户访问历史记录信息进行分析,使用ABC分类方法与用户最近访问时间的方式计算用户访问模式,存储到用户访问模式存储模块30中。由于多数用户的访问都呈现出周期性的使用,此周期和用户的工作生活中的周期有较大关联,因此提供的待选的周期包括日周期D、周(星期)周期W,月周期M。考虑到运营商用户量的大小已经不同用户之间的数据独立性,部署方式包括分布式计算、云计算等。根据待选用户的使用周期T,把周期T内时间按照ABC分类方法进行划分成TA、 TB、TC三段,使该待选用户的70-80%的访问发生在TA段时间,10-20%的访问发生在TB段时间,0-10%的访问发生在TC段时间。每个用户的访问周期T和TA、TB、TC的划分都可能是不同的。同时考虑到用户活动的连续性,例如出差、节假日等,设定越新的历史访问记录信息的参考价值权重会越高。用户访问历史分析模块处理流程如下所述第一步,取用户最近的一个月(30天)的访问历史记录,取周期丁为对小时,取时间段t为周期的开始和结束时间,fn和FN为第N天用户在t时间段和T时间段内的访问的次数。缓存调度周期TF时间段内用户访问的加权概率采用的计算公式为P= (fn*N)/ (FN*N),计算t时间段内用户的访问概率。第二步,如果用户在t时间段内的访问概率超过70%,则将t的时间前后都减去一个小的时间(例如半小时),重新计算t时间段内的用户访问概率。第三步,重复第二步,直到计算的用户访问概率小于70%,再将上次计算时的t记录到用户访问模式表中。缓存调度模块20,根据从用户访问模式存储模块本文档来自技高网...

【技术保护点】
1.一种缓存调度方法,其特征在于,包括,步骤1、根据用户访问历史记录进行分析,得到用户访问模式;步骤2、根据用户访问模式,在时间接近用户的高访问概率时间段时将用户信息调入缓存,在其已经访问或进入低访问概率时调出缓存。

【技术特征摘要】

【专利技术属性】
技术研发人员:代庆国
申请(专利权)人:深圳中兴网信科技有限公司
类型:发明
国别省市:94

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

1