[发明专利]一种应用缓存服务器与数据库同步的方法、装置和系统无效
| 申请号: | 200910092420.6 | 申请日: | 2009-09-14 |
| 公开(公告)号: | CN102023973A | 公开(公告)日: | 2011-04-20 |
| 发明(设计)人: | 王磊;范晓晖;刘越;于蓉蓉;郑冬冬 | 申请(专利权)人: | 中国移动通信集团公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京鑫媛睿博知识产权代理有限公司 11297 | 代理人: | 龚家骅 |
| 地址: | 100032 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 应用 缓存 服务器 数据库 同步 方法 装置 系统 | ||
技术领域
本发明涉及数据业务领域,尤其涉及一种应用缓存服务器与数据库同步的方法、装置和系统。
背景技术
随着近年来软件技术的发展及企业信息建设的需求,现在的应用系统所要处理的数据越来越庞大,所要服务的用户数量也不断加大。应用系统中的数据大部分存储在数据库系统中,用于对用户的服务。数据量的增加和用户数的增多,导致数据库系统负荷的增加和工作压力的增大,使数据库系统就成为整个应用系统的瓶颈。
为了改进数据库系统的性能,除了数据库系统本身架构设计上的演进外,应用系统多采用增加应用缓存服务器,通过直接访问应用缓存服务器的方式,改善数据访问的性能。应用缓存服务器可以减轻大量的数据使用者直接访问数据库系统、对数据库系统造成的读写压力和计算压力,使数据库系统满足支撑应用系统的需要,并提高应用系统的处理能力和响应能力。数据使用者不再直接访问数据库系统本身,而是访问应用缓存服务器中的数据,从而提高系统的整体处理能力和响应能力。
在具体的应用中,应用缓存服务器内数据需要和数据库内的数据保持一致,即数据库内的数据发生变化时,变化的数据需要同步到应用缓存服务器中。常用的技术手段包括通过外部同步程序实现同步,以及由数据访问者完成数据的同步。其中,通过外部同步程序实现同步具体包括,建立外部同步程序,通过该外部同步程序周期性地检查数据库内数据的变化情况,如果发生变化,则通过外部同步程序把变化的数据内容更新到应用缓存服务器之中;由数据访问者完成数据的同步具体包括,数据访问者首先访问应用缓存服务器时,如果需要的数据不存在,则由数据访问者完成相应的数据在数据库和应用缓存服务器的同步,还可以为缓存中的每项数据都设置一个数据过期时间,当数据访问者再次使用该数据时,如果发现数据已经过期,重新完成数据的同步。
发明人在实现本发明的过程中,发现现有技术至少存在以下缺陷:
对于通过外部同步程序实现同步的方法,如果外部同步程序的检查周期过长,则无法保证数据缓存和数据库内数据的一致性,影响数据使用者的正常使用,如果检查周期过短,则必然会对数据库造成读写压力。另外,如果数据库内数据量巨大,则完成同步的时间、对数据的读写压力、检索变化数据的计算开销将不可接受。
对于由数据访问者完成数据的同步的方法,增加了数据使用接口的复杂度;在初次使用数据时完成数据的同步,可能会发生大量数据需要同步的情况,数据库系统的压力将会出现峰值,从而引发性能问题;如果使用了数据过期时间策略,除了增加数据使用接口的复杂度,还会产生新的数据库系统访问瓶颈。
发明内容
本发明实施例提供了一种应用缓存服务器与数据库同步的方法、装置和系统,满足了数据库内的数据同步到应用缓存服务器的时效性要求,并减轻了数据同步时对数据库的压力。
本发明实施例提供了一种应用缓存服务器与数据库同步的方法,包括以下步骤:
当数据库中的数据发生更新时,接收来自所述数据库的更新数据,将所述更新数据添加到消息队列;
根据所述添加到消息队列中的更新数据,更新应用缓存服务器中的数据。
本发明实施例还提供了一种应用缓存服务器,包括:
接收模块,用于当数据库中的数据发生更新时,接收来自所述数据库的更新数据,将所述更新数据添加到消息队列;
存储模块,用于存储数据;
更新模块,与所述接收模块和所述存储模块连接,用于根据所述接收模块添加到消息队列中的更新数据,更新存储模块中的数据。
本发明实施例还提供了一种应用缓存服务器与数据库同步的系统,包括数据使用设备、数据库和应用缓存服务器,
所述数据使用设备,用于读取所述应用缓存服务器中的数据,并对所述数据库中数据进行修改;
所述数据库,用于在自身的数据发生更新时,将更新数据发送到所述应用缓存服务器;
所述应用缓存服务器,用于当所述数据库中的数据发生更新时,接收来自所述数据库的更新数据,将所述更新数据添加到消息队列;根据所述添加到消息队列中的更新数据,更新缓存单元中的数据。
与现有技术相比,本发明实施例具有以下优点:仅在数据库中的数据更新的时刻进行数据同步,并将更新的数据内容添加到消息队列中,消息处理程序无需再次和数据库交互,便可把数据同步到应用缓存服务器中,满足了数据同步的时效性,减轻了数据同步时对数据库的压力。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团公司,未经中国移动通信集团公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910092420.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:作为TLR活性调节剂的化合物和组合物
- 下一篇:磁力操动机构





