[发明专利]一种数据缓存方法及系统在审
| 申请号: | 201611115904.4 | 申请日: | 2016-12-07 |
| 公开(公告)号: | CN106599152A | 公开(公告)日: | 2017-04-26 |
| 发明(设计)人: | 邹康;李行;单衍景 | 申请(专利权)人: | 北京华夏电通科技有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京三友知识产权代理有限公司11127 | 代理人: | 任默闻,贾磊 |
| 地址: | 100085 北京市海*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据 缓存 方法 系统 | ||
技术领域
本发明涉及数据交互领域,尤指一种数据缓存方法及系统。
背景技术
随着技术的发展,和客户业务管理的要求,现在的企业级应用系统的功能越来越丰富,系统越来越庞大。这种系统大部分都是采用B/S架构,进行集中部署,统管全省甚至是全国的各个分支机构业务应用。在企业级应用系统中,大部分都是OLTP(即联机事务处理)和OLAP(即联机分析处理),即便是在OLTP系统中,客户端的读数据请求也会占到60%-70%,而OLAP系统基本都是读请求。现代企业级应用系统,影响性能的因素中网络和磁盘IO占到了90%以上,造成这种影响的原因主要是因为OLAP/OLTP这类业务系统的数据大部分都是结构化数据,都依赖于数据库,每次客户端进行请求,基本上都要进行数据库交互,数据库与应用系统之间大多都采用分布式,应用系统程序做为客户端,从数据库服务端请求数据;而数据库处理请求过程大体上为:首先要解析SQL语句,再进行锁表,然后从物理文件筛选与加载数据,最后返回结果与释放锁,从客户端发送请求,这之间涉及了应用程序系统与数据库之间的网络IO、数据库服务服务端从磁盘读取数据的磁盘IO。
随着2014年9月,HTML5规范正式发布,前端网页技术发展到了一个新的高度,富客户端、交互式的网页技术,让系统的用户体验更好,但这也为B/S系统开发带来了响应性能的问题;更丰富的展现内容使的浏览器请求服务端资源时,需要加载更多的HTML标签内容及文件资源,并且页面展现的大部分主体都是固定不变的,每次请求WEB应用服务端都从磁盘加载资源文件,访问量大时,增加了磁盘IO压力,服务端响应变慢,用户体验非常不好。在整个计算机数据处理过程中,访问数据效率从高到低依次是CPU寄存器、本机内存、本地磁盘IO、网络IO;在现如今应用系统普遍功能比较复杂,应用系统采用分布式协作部署是必不可少的,也就是说网络IO是不可避免的,如何降低网络IO与磁盘IO,将一些不变或者更新少的数据尽量缓存在内存中,提高系统的响应速度,提升用户的使用体验,一些开源组织提供了如MemCache、Redis等开源的内存KV数据库系统,并且提供了常见编程语言的客户端SDK工具。这些开源的内存数据库系统通过键值对缓存数据,每条数据的key是唯一的,通过key能很快的定位到数据;通过这种数据库,对于频繁访问的数据进行缓存,能够有效降低数据库访问及磁盘IO的访问;但是这类系统都有一个共通的问题,都是通过客户端、服务端的架构,并且客户端不提供数据时效功能,并且服务端缓存数据过期都是通过LRU(Least recently used,最近最少使用)算法或者设置数据的过期时间进行回收内存,这样对于频繁访问的数据,还是每次都要进行与内存数据库服务端的网络IO,如果本地系统把数据缓存起来,数据发生改变时,导致各个客户端的数据副本跟数据库不一致,如果客户端按照时间/次数,到达某给时间或访问次数以后重新从内存数据库服务端加载,有可能数据已经被回收。
发明内容
本发明目的在于解决C/S(客户端服务端架构)、B/S(浏览器服务端架构)或分布式应用系统中,对于频繁访问并且更新很少的缓存数据,提高缓存访问的命中率,降低缓存数据过期导致的数据重新加载带来的IO性能损失,提高应用系统的响应速度,提升用户的使用体验。
为达上述目的,本发明具体提供一种数据缓存方法,所述方法包含:客户端根据访问请求,对待访问数据设置优先级;客户端将预定优先级级别的待访问数据缓存到本地作为服务端的缓存副本;当客户端进行数据访问时,将所述数据访问的目标数据与所述缓存副本进行比较,根据比较结果于所述缓存副本和/或服务端获得所述目标数据。
在上述数据缓存方法中,优选的,所述客户端将预定优先级级别的待访问数据缓存到本地作为服务端缓存副本还包含:客户端根据所述缓存副本生成淘汰监听标识,并将所述淘汰监听标识发送至服务端,服务端将所述淘汰监听标识与所述缓存副本所对应的原数据一对一保存。
在上述数据缓存方法中,优选的,所述方法还包含:服务端根据预定淘汰队列清理缓存时,当检测到所述淘汰监听标识时,将所述淘汰监听标识所对应的原数据信息广播至客户端;当预定周期时间内接收到客户端反馈信息,则保留所述淘汰监听标识所对应的原数据。
在上述数据缓存方法中,优选的,所述当预定周期时间内接收到客户端反馈信息,则保留所述淘汰监听标识所对应的原数据还包含:客户端接收到服务端广播的所述淘汰监听标识所对应的原数据信息时,将所述原数据信息与本地存储的缓存副本,当所述原数据信息与所述缓存副本一致时,删除本地存储的所述缓存副本并反馈信息至服务端。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京华夏电通科技有限公司,未经北京华夏电通科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611115904.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





