[发明专利]一种可支撑高并发内存数据的方法在审
| 申请号: | 201410822558.8 | 申请日: | 2014-12-25 |
| 公开(公告)号: | CN104484136A | 公开(公告)日: | 2015-04-01 |
| 发明(设计)人: | 向志玲 | 申请(专利权)人: | 深圳联友科技有限公司 |
| 主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F9/38;G06F9/46 |
| 代理公司: | 深圳市顺天达专利商标代理有限公司 44217 | 代理人: | 高占元 |
| 地址: | 518031 广东省深圳市*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 支撑 并发 内存 数据 方法 | ||
技术领域
本发明涉及网络通信技术领域,更具体地说,涉及一种实现用于海量服务开发人员在存储数据时,可以快速方便的实现数据的存储,对数据的访问能够达到高并发高实时性的要求,同时应用层程序不需要处理数据的分布式存储和部署,提高开发效率的情况的基于内存数据库高并发速写数据的方法。
背景技术
在互联网海量服务开发任务中,对于应用层程序中读写频率比较高而且数据量比较大的数据的设计与开发是一项软件设计开发人员必须解决的问题。既要支撑高并发和高实时性访问,又要保证应用层程序数据在集群部署中的一致性,同时还要降低程序异常退出、系统重启等各种异常对数据造成损坏带来的风险,成为了海量服务数据管理所需要解决的课题。
目前,现有技术方案一般为:
1、现有许多系统中,数据保存在关系型数据库中,应用层程序启动时加载数据库中的所有数据,并在数据发生变化时将变化的数据发送到集群部署的在其他服务器。
2、使用开源的内存数据库来保存读写频率比较高的数据。
在现有技术中,其主要缺点有:
1、将数据保存在传统的关系型数据库,一方面对于读写频率比较高而且对并发量大的数据访问响应速度和处理能力比较低;另一方面对于集群部署的应用层程序,相互之间同步数据的代价比较大,且不能保证数据的一致性。
2、使用开源的内存数据库来保存数据,一方面由于内存数据库服务程序直接对外部应用层程序服务,受限程序内部的处理逻辑和网络IO,单机服务的处理能力得不到最大化;另一方面由于将数据保存在内存中,或者定时将一部分数据保存到磁盘上,对于服务重启、系统掉电等异常情况将丢失部分或全部数据,数据抗风险能力低。
发明内容
本发明所要解决的技术问题是,针对现有的并发量大的数据访问响应速度和处理存储能力比较低的情况,提供一种可支撑高并发、高实时性的可支撑高并发内存数据的方法。
本发明解决上述技术问题的技术方案如下:一种可支撑高并发内存数据的方法,该方法包括:
S1、应用层程序发送读写数据请求给接入层程序;
S2、所述接入层程序将读写数据请求进行归类与合并;
S3、所述接入层程序将读写数据请求分发给缓存层程序;
S4、所述缓存层程序判断是读数据或写数据,如果是读数据,将转至步骤S41,如果是写数据将转至步骤S42;
S41、缓存层程序将读取缓存数据,并转至步骤S5;
S42、修改缓存数据并转至步骤S5,与此同时,所述缓存层程序将数据流水写入流水文件,并转至步骤S6;
S5、所述缓存层程序向接入层程序返回响应包,并转至步骤S7;
S6、数据同步工具读取流水文件,并转至步骤S10;
S7、所述接入层程序将响应包进行拆解与合并;
S8、所述接入层程序向应用层程序返回读写数据响应包,并转至步骤S9;
S9、结束程序;
S10、所述数据同步工具将流水文件进行流水组包;
S11、缓存层的备机同步流水文件,并转至步骤S9。
在本发明的可支撑高并发内存数据的方法中,所述步骤S2的所述接入层程序将读写数据请求进行归类与合并,是根据请求的数据项所在的缓存层位置进行归类,然后根据请求的请求类型,将请求单条记录的请求事务进行合并,最后将请求转发到相应的缓存层程序之中。
在本发明的可支撑高并发内存数据的方法中,所述缓存层包括主存储层和副存储层,用于数据容灾。
在本发明的可支撑高并发内存数据的方法中,所述缓存层管理数据,并定期将缓存层的内存的所有数据转存储在磁盘上。
在本发明的可支撑高并发内存数据的方法中,在所述缓存层程序定期将内存中的所有数据转存储在磁盘上时,所述缓存层程序将记录用户的每一次写数据请求。
在本发明的可支撑高并发内存数据的方法中,所述缓存层的内存包含至少一个Cluster,Cluster包含至少一个Block,Block包含至少一个Chunk,每次分配内存时根据预分配的内存大小选择合适的Chunk进行分配。
在本发明的可支撑高并发内存数据的方法中,所述缓存层在释放内存时先返回到内存管理模块,由内存管理模块控制缓存层是否释放内存。
在本发明的可支撑高并发内存数据的方法中,在每次写数据时,将数据同步到缓存层的备机之中。
在本发明的可支撑高并发内存数据的方法中,在每次写数据时,将数据流水写入流水文件之中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳联友科技有限公司,未经深圳联友科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410822558.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





