一种web集群缓存的利用系统及优化方法技术方案

技术编号:20865608 阅读:23 留言:0更新日期:2019-04-17 09:11
本发明专利技术公开了一种web集群缓存的利用系统,由负载均衡服务器、数据分析服务器和web集群服务器组成,所述web集群服务器由多个目标web服务器构成。本发明专利技术的web集群缓存的利用系统可有效解决现有的web集群缓存的系统存在的当某一时间段热点数据的请求列表产生变化,根据数据分析服务器当下一次的分析来指导web服务器进行数据库表缓存,会导致web服务器缓存的内容频繁更新,缓存命中率降低,系统产生波动的问题。

【技术实现步骤摘要】
一种web集群缓存的利用系统及优化方法
本专利技术涉及计算机网络
,特别涉及一种web集群缓存的利用系统及优化方法。
技术介绍
随着云计算与Web2.0的进一步发展,许多企业或组织时常会面对更多的需求:大量的并发用户访问、每秒数以千计的并发事务处理、灵活的弹性与可伸缩性、低延时等,传统事务型应用开始向极限事务处理型应用转变。集群式缓存作为一种关键的极限事务处理技术,可为事务型应用提供高吞吐率、低延时的技术解决方案。其延迟写机制可提供更短的响应时间,同时极大地降低数据库的事务处理负载,分阶段事件驱动架构,可以支持大规模、高并发的事务处理请求。此外,集群式缓存在内存中管理事务并提供数据的一致性保障,采用数据复制技术实现高可用性,具有较优的扩展性与性能组合。
技术实现思路
本专利技术的目的是基于
技术介绍
,提供一种web集群缓存的利用系统及优化方法,解决现有技术中,随着系统业务的变化和增加,用户请求的热点数据存在发生变化的可能,当某一时间段热点数据的请求列表产生变化,根据数据分析服务器当下一次的分析来指导web服务器进行数据库表缓存,会导致web服务器缓存的内容频繁更新、缓存命中率降低、系统产生波动的技术问题。为了达到上述的技术效果,本专利技术采取以下技术方案:一种web集群缓存的利用系统,由负载均衡服务器、数据分析服务器和web集群服务器组成,所述web集群服务器由多个目标web服务器构成;所述数据分析服务器用于记录和统计用户请求的日志信息,根据历史热点记录和节点概率链表得到包含需访问的数据库表和目标服务器链表两个字段的分类标准;负载均衡服务器用于根据数据分析服务器确定的分类标准确定用户请求的目标web服务器,并将用户请求转发到对应的目标web服务器,并通过移动指针遍历备选目标web服务器的链表集合,实现负载的均衡;目标web服务器用于接收负载均衡服务器转发的用户请求,并将具有较高用户请求量的数据库表缓存到内存中,在接收到相应的用户请求时则直接从内存中读取数据库表中对应的数据生成结果并返回。同时,本专利技术还公开了一种Web集群缓存的优化方法,通过上述的一种web集群缓存的利用系统实现,所述Web集群缓存的优化方法具体包括数据预处理流程及请求转发处理流程,所述数据预处理流程包括完成用户请求的记录、统计和分析,在用户请求对应的目标web服务器上提前加载需要访问的数据库表,所述请求转发处理流程包括通过负载均衡服务器对比接收的用户请求与分类标准,确定请求对应转发的目标web服务器并完成请求的转发,再由目标web服务器接收用户请求并处理,最后将结果返回。进一步地,所述数据预处理流程具体包括以下步骤:S1:根据系统的业务变化快慢的特性设定节点概率的衰减过程:S1.1根据系统特点确定初始值Ninit:Ninit=N0e-al其中,Ninit为衰减概率初始值,代表当前时间段的节点在整个历史记录中的重要程度,N0=1,l决定初始值的偏移量,a为衰减系数,表示随着时间变化历史对于未来预测的影响的大小变化,a和l的值根据系统的业务变化快慢的特性自行定义;S1.2根据完成值Nfinish的定义公式:Nfinish=Nkf=N0e-a(m+l),根据定义的参数a和l,依次增加k值,计算每个节点的完成值Nfinish,Nfinish为衰减概率完成值,代表了节点对预测具有指导意义的最小概率,当Nfinish=Nkf=N0e-a((k+1)T+l)<Nmin时,停止计算,此时,k的值即为概率链表和历史热点数据集合链表的长度;其中,Nmin是Nfinish的一个参考值,用来表示历史节点对预测的概率权重的下限,m表示时间间隔单位为秒,若预设的时间间隔为T,则m=kT,k为整数。S1.3根据步骤S1.2确定的k值,分别计算1~k范围内整数节点对应的节点概率,计算公式为:Nkf=N0e-a(kT+l),将节点概率按照从小到大的顺序存储到节点概率链表中;S2.数据分析服务器保存预设时间段内用户请求数据库的日志记录,每条请求日志均需记录用户请求需访问的数据库表信息;根据历史日志记录确定用户请求的分类,将访问相同数据库表的用户请求划分为一类,根据二八原则得到初始热点数据表的集合;S3.遍历k次热点数据的链表记录,结合步骤S1得到的节点概率链表,构造key-value的键值对:如果key值不存在,取节点概率链表对应节点的值赋值给value;如果key值已经存在,使用在value值得基础上加上节点的概率值,将map按照value值进行降序排序,按照排序选择value值之和不超过value值总和80%的数据库表作为热点集合。进一步地,所述步骤S1.2中,Nmin=0.2。进一步地,所述请求转发处理流程具体包括以下步骤:S4.根据步骤S3得到的热点数据表集合和历史的分类标准,对比热点数据表集合和历史的分类标准中的数据表,筛选出需要更新的分类标准和新增的热点数据表,将更新的分类标准中对应的目标web服务器标号放回未分配的集合,对新增的热点数据表根据单位时间内请求量和目标web服务器的传输容量计算需要的目标web服务器数量,从未分配列表选择对应数量的目标web服务器构造新的分类标准;S5:目标web服务器接收数据分析服务器转发的分类请求,确定需要加载的数据库表的名称,从数据库加载表的内容到内存中;S6:负载均衡服务器接收用户请求,对比数据分析服务器的分类标准确定用户请求所属的分类,负载均衡服务器从分类标准的目标服务器集合中通过指针指向的节点确定目标服务器的编号;S7:目标web服务器接收负载均衡服务器转发的用户请求,并对请求的内容进行处理,从内存中获取对应的数据作为结果返回。进一步地,所述步骤S2具体包括以下步骤:S2.1数据分析服务器保存预设时间段内用户请求数据库的日志记录,每条请求日志均需记录用户请求需访问的数据库表信息;S2.2将访问相同数据库表的用户请求划分为一类,统计各个分类的用户请求量,按照请求量从大到小的顺序进行排序,对排序在前20%的分类进行定义,生成包含编号以及数据库表的分类标准即热点数据库表集合;S2.3将步骤S2.2得到的热点数据库表集合加入到热点数据历史记录的双向循环链表,检查双向循环链表的长度,如果链表长度不大于k,不再进行操作;如果链表的长度大于k,则删除热点数据历史记录的双向循环链表的下一个节点。进一步地,所述步骤S3具体包括以下步骤:S3.1获取热点数据表历史记录的指针指向的当前节点的数组集合,将指针移动的次数记录到变量i,i初始值为1,从数组集合中取出第一个数据库表的名字,将数据库表名作为key值;同时,取节点概率链表中下标为k-1的节点概率作为value值,将key-value键值对存储到map集合中,按此依次取出数组集合中剩下的数据库表名字,将对应的key-value存储到map集合中;S3.2在继续移动指针之前,先判断节点概率链表的下一个热点数据集合是否为空,如果下一个热点数据集合不为空,移动热点数据表历史记录的指针,否则,集合遍历完毕;S3.3从热点数据库表和概率链表中分别取出任意i阶段的数据库表明和对应的概率值,在进行map集合的赋值操作时,先获取当前数据库表名在map集合中是否已经存在值,如果已经存在,则将value本文档来自技高网...

【技术保护点】
1.一种web集群缓存的利用系统,其特征在于,由负载均衡服务器、数据分析服务器和web集群服务器组成,所述web集群服务器由多个目标web服务器构成;所述数据分析服务器用于记录和统计用户请求的日志信息,根据历史热点记录和节点概率链表得到包含需访问的数据库表和目标服务器链表两个字段的分类标准;负载均衡服务器用于根据数据分析服务器确定的分类标准确定用户请求的目标web服务器,并将用户请求转发到对应的目标web服务器,并通过移动指针遍历备选目标web服务器的链表集合,实现负载的均衡;目标web服务器用于接收负载均衡服务器转发的用户请求,并将具有较高用户请求量的数据库表缓存到内存中,在接收到相应的用户请求时则直接从内存中读取数据库表中对应的数据生成结果并返回。

【技术特征摘要】
1.一种web集群缓存的利用系统,其特征在于,由负载均衡服务器、数据分析服务器和web集群服务器组成,所述web集群服务器由多个目标web服务器构成;所述数据分析服务器用于记录和统计用户请求的日志信息,根据历史热点记录和节点概率链表得到包含需访问的数据库表和目标服务器链表两个字段的分类标准;负载均衡服务器用于根据数据分析服务器确定的分类标准确定用户请求的目标web服务器,并将用户请求转发到对应的目标web服务器,并通过移动指针遍历备选目标web服务器的链表集合,实现负载的均衡;目标web服务器用于接收负载均衡服务器转发的用户请求,并将具有较高用户请求量的数据库表缓存到内存中,在接收到相应的用户请求时则直接从内存中读取数据库表中对应的数据生成结果并返回。2.一种Web集群缓存的优化方法,其特征在于,通过如权利要求1所述的一种web集群缓存的利用系统实现,所述Web集群缓存的优化方法具体包括数据预处理流程及请求转发处理流程,所述数据预处理流程包括完成用户请求的记录、统计和分析,在用户请求对应的目标web服务器上提前加载需要访问的数据库表,所述请求转发处理流程包括通过负载均衡服务器对比接收的用户请求与分类标准,确定请求对应转发的目标web服务器并完成请求的转发,再由目标web服务器接收用户请求并处理,最后将结果返回。3.根据权利要求2所述的一种Web集群缓存的优化方法,其特征在于,所述数据预处理流程具体包括以下步骤:S1:根据系统的业务变化快慢的特性设定节点概率的衰减过程:S1.1根据系统特点确定初始值Ninit:Ninit=N0e-al其中,Ninit为衰减概率初始值,代表当前时间段的节点在整个历史记录中的重要程度,N0=1,l决定初始值的偏移量,a为衰减系数,表示随着时间变化历史对于未来预测的影响的大小变化,a和l的值根据系统的业务变化快慢的特性自行定义;S1.2根据完成值Nfinish的定义公式:Nfinish=Nkf=N0e-a(m+l),根据定义的参数a和l,依次增加k值,计算每个节点的完成值Nfinish,当Nfinish=Nkf=N0e-a((k+1)T+l)<Nmin时,停止计算,此时,k的值即为概率链表和历史热点数据集合链表的长度;其中,Nfinish为衰减概率完成值,代表了节点对预测具有指导意义的最小概率,Nmin是Nfinish的一个参考值,用来表示历史节点对预测的概率权重的下限,m表示时间间隔单位为秒,若预设的时间间隔为T,则m=kT,k为整数;S1.3根据步骤S1.2确定的k值,分别计算1~k范围内整数节点对应的节点概率,计算公式为:Nkf=N0e-a(kT+l),将节点概率按照从小到大的顺序存储到节点概率链表中;S2.数据分析服务器保存预设时间段内用户请求数据库的日志记录,每条请求日志均需记录用户请求需访问的数据库表信息;根据历史日志记录确定用户请求的分类,将访问相同数据库表的用户请求划分为一类,根据二八原则得到初始热点数据表的集合;S3.遍历k次热点数据的链表记录,结合步骤S1得到的节点概率链表,构造key-value的键值对:如果key值不存在,取节点概率链表对应节点的值赋值给value;如果key值已经存在,使用在value值得基础上加上节点的概率值,将map按照value值进行降序排序,按照排序选择value值之和不超过value值总和80%的数据库表作为热点集合。4.根据权利要求3所述的一种Web集群缓存的优化方法,其特征在于,所述步骤S1.2中,Nmin=0.2。5.根据权利要求3所述的一种Web集群缓存的优化方法,其特征在于,所述请求转发处理流程具体包括以下步骤:S4:根据步骤S3得到的热点数据表集合和历史的分类标准,对比热点数据表集合和历史的分类标准中的数据表,筛选出需要更新的分类标准和新增的热点数据表,将更新的分类标准中对应的目标web服务器标号放回未分配的集合,对新增的热点数据表根据单位时间内请求量和目标web服务器的传输容量计算需要的目标web服务器数量,从未分配列表选择对应数量的目标web服务器构造新的分类标准;S5:目标web服务器接收数据分析服务器转发的分类请求,确定需要加载的数据库表的名称,从数据库加载表的内容到内存中;S6:负载均衡服务器接收用户请求,对比数据分析服务器的分类标准确定用户请求所属的分类,负载均衡服务器从分类标准的目标服务器集合中通过指针指向的节点确定目标服务器的编号;S7:目标web服务器接收负载均衡服务器转发的用户请求,并对请求的内容进行处理,从内存中获取对应的数据作为结果返回。6.根据权利要求3所述的一种Web集群缓存的优化...

【专利技术属性】
技术研发人员:邓燕岳永胜李波
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川,51

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

1