CN104636436A - 一种可配置的分布式缓存系统 - Google Patents
一种可配置的分布式缓存系统 Download PDFInfo
- Publication number
- CN104636436A CN104636436A CN201410855763.4A CN201410855763A CN104636436A CN 104636436 A CN104636436 A CN 104636436A CN 201410855763 A CN201410855763 A CN 201410855763A CN 104636436 A CN104636436 A CN 104636436A
- Authority
- CN
- China
- Prior art keywords
- server
- caching
- data
- distributed cache
- cache system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种可配置的分布式缓存系统,其构建于一个业务系统内,包括:预先建立的多种缓存机制,每个缓存机制配置一个枚举值;输入模块,其用于接收由用户提供的一个处置数据的操作,并同时接收由用户提供的一个选定的枚举值;第一判断模块,其用于对该选定的枚举值解析,选择与该选定的枚举值对应的缓存机制并初始化,从而使用该缓存机制完成该处置数据的操作。本发明中,使用者可以根据业务需要场景的不同提供不同的枚举值,从而实现对不同的缓存机制的选择,进而满足业务系统的需要。
Description
技术领域
本发明涉及缓存系统,尤其涉及一种可配置的分布式缓存系统。
背景技术
在一般的业务系统中所建立的缓存系统都只包含一种特定的缓存机制,业务也就只能使用该单一的缓存,这导致使用上的不方便和系统的不灵活,无法满足业务系统中复杂灵活的实际需求。另外,缓存系统缺少有效的灵活应对故障的机制,影响到整个业务系统的稳定性和工作效率。
发明内容
针对上述技术问题,本发明提供了一种提供可配置的分布式缓存机制的并可根据需求动态进行选择的,灵活性高的缓存系统。
本发明提供的技术方案为:
一种可配置的分布式缓存系统,其构建于一个业务系统内,包括:
预先建立的多种缓存机制,每个缓存机制配置一个枚举值;
输入模块,其用于接收由用户提供的一个处置数据的操作,以及同时接收由用户提供的一个选定的枚举值;
第一判断模块,其用于对该选定的枚举值解析,选择与该选定的枚举值对应的缓存机制并初始化,从而使该缓存机制完成该处置数据的操作。
优选的是,所述的可配置的分布式缓存系统中,所述处置数据的操作为增加、删除、修改和查询操作中的一种或几种。
优选的是,所述的可配置的分布式缓存系统中,选用一个选定的缓存机制增加的数据,采用同一缓存机制对该数据进行删除、修改和查询操作。
优选的是,所述的可配置的分布式缓存系统中,所述多种缓存机制包括微软企业库缓存机制、微软应用服务器缓存机制、Memcache缓存机制以及Redis缓存机制。
优选的是,所述的可配置的分布式缓存系统中,
所述输入模块,其用于在接收由用户提供的所述处置数据的操作的同时,接收由用户提供的一个选定的服务器标识;
所述缓存系统包括:
多个缓存服务器,每个缓存服务器与一个服务器标识建立有一一对应的映射关系;
第二判断模块,其用于对该选定的服务器标识解析,选择与该选定的服务器标识对应的缓存服务器,从而使该缓存服务器完成该处置数据的操作。
优选的是,所述的可配置的分布式缓存系统中,
在所述Redis缓存机制中,所述缓存系统还包括:
一个主服务器,所述主服务器用于完成写入操作,所述写入操作包括增加、删除和修改操作中的一种或几种;
若干从服务器,任一个从服务器用于完成查询操作。
优选的是,所述的可配置的分布式缓存系统中,所述主服务器用于将数据存储在内存,不对数据进行实时性持久化保存,所述从服务器用于对数据进行实时性持久保存。
优选的是,所述的可配置的分布式缓存系统,包括:
监控工具,其用于监测所述主服务器以及若干的从服务器的运行情况,当所述主服务器异常,则所述主服务器先从其中一个从服务器复制数据,再重启,若任一个从服务器异常,则直接重启。
本发明所述的缓存系统预先建立有多种缓存机制,并且每个缓存机制配置有一个枚举值,当输入模块接收到一个处置数据的操作并同时接收到一个选定的枚举值时,第一判断模块根据该选定的枚举值确定相应的缓存机制,由该缓存机制完成该处置数据的操作。本发明中,使用者可以根据业务需要场景的不同提供不同的枚举值,从而实现对不同的缓存机制的选择,进而满足业务系统的需要。
附图说明
图1为本发明所述的可配置的分布式缓存系统的架构示意图;
图2为本发明所述的多个缓存服务器的框图;
图3为本发明所述的Redis缓存机制中主服务器和从服务器的架构框图。
具体实施方式
下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
如图1所示,本发明提供一种可配置的分布式缓存系统,其构建于一个业务系统内,包括:预先建立的多种缓存机制,每个缓存机制配置一个枚举值;输入模块,其用于接收由用户提供的一个处置数据的操作,以及同时接收由用户提供的一个选定的枚举值;第一判断模块,其用于对该选定的枚举值解析,选择与该选定的枚举值对应的缓存机制并初始化,从而使该缓存机制完成该处置数据的操作。用户可以根据业务需求场景不同提供选定的枚举值,进而选用合适的缓存机制。本发明相当于构建了一个缓存工厂,用户根据需要从该缓存工厂里选择所需要的缓存机制。这里业务需求场景指的是存储数据类型、数据量的大小、数据实时性需求以及数据持久化需求等等。
在一个实施例中,所述的可配置的分布式缓存系统中,所述处置数据的操作为增加、删除、修改和查询操作中的一种或几种。
在一个实施例中,所述的可配置的分布式缓存系统中,选用一个选定的缓存机制增加的数据,采用同一缓存机制对该数据进行删除、修改和查询操作。即处置数据的操作必须保证缓存机制一致,也即增加的数据必须通过相同的缓存机制对同一数据进行删除、修改及查询操作。
如图1所示,在一个实施例中,所述的可配置的分布式缓存系统中,所述多种缓存机制包括微软企业库缓存机制(Microsoft.Practices.EnterpriseLibrary.Caching)、微软应用服务器缓存机制Microsoft.ApplicationServer.Caching)、Memcache缓存机制以及Redis缓存机制。本发明还可以包括其他未列出的缓存机制,只要各缓存机制可以提供数据基本的增删改查方法即可。
请参见图2,在一个实施例中,所述的可配置的分布式缓存系统中,所述输入模块,其用于在接收由用户提供的所述处置数据的操作的同时,接收由用户提供的一个选定的服务器标识;所述缓存系统包括:多个缓存服务器,每个缓存服务器与一个服务器标识建立有一一对应的映射关系;第二判断模块,其用于对该选定的服务器标识解析,选择与该选定的服务器标识对应的缓存服务器,从而使该缓存服务器完成该处置数据的操作。其中,缓存系统可以通过配置文件建立缓存服务器与服务器标识之间的映射关系。本实施例可以进一步提高缓存系统的可靠性和稳定性。
请参见图3,在一个实施例中,Redis缓存机制支持主从机制。具体来说,所述的缓存系统,包括:一个主服务器,所述主服务器用于完成写入操作,所述写入操作包括增加、删除和修改操作中的一种或几种;若干从服务器,任一个从服务器用于完成查询操作。其中,完成查询操作的从服务器是在服务器列表中随机选择的。
在一个实施例中,所述的可配置的分布式缓存系统中,所述主服务器用于将数据存储在内存,不对数据进行实时性持久化保存,所述从服务器用于对数据进行实时性持久保存。在现有的缓存系统中,主服务器和从服务器的数据是同步的,但是在磁盘中持久化存储数据会消耗机器的性能。在本发明中,仅设计从服务器的数据为持久保存,而主服务器为非持久保存,以保证主服务器的工作性能。
在一个实施例中,所述的可配置的分布式缓存系统,包括:监控工具,其用于监测所述主服务器以及若干的从服务器的运行情况,当所述主服务器异常,则所述主服务器先从其中一个从服务器复制数据,再重启,若任一个从服务器异常,则直接重启。由于主服务器内存储的数据为非持久存储的,当其故障时,需要首先从从服务器中复制数据,之后再重启。
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
Claims (8)
1.一种可配置的分布式缓存系统,其构建于一个业务系统内,其特征在于,包括:
预先建立的多种缓存机制,每个缓存机制配置一个枚举值;
输入模块,其用于接收由用户提供的一个处置数据的操作,以及同时接收由用户提供的一个选定的枚举值;
第一判断模块,其用于对该选定的枚举值解析,选择与该选定的枚举值对应的缓存机制并初始化,从而使该缓存机制完成该处置数据的操作。
2.如权利要求1所述的可配置的分布式缓存系统,其特征在于,所述处置数据的操作为增加、删除、修改和查询操作中的一种或几种。
3.如权利要求2所述的可配置的分布式缓存系统,其特征在于,选用一个选定的缓存机制增加的数据,采用同一缓存机制对该数据进行删除、修改和查询操作。
4.如权利要求3所述的可配置的分布式缓存系统,其特征在于,所述多种缓存机制包括微软企业库缓存机制、微软应用服务器缓存机制、Memcache缓存机制以及Redis缓存机制。
5.如权利要求1至4中任一项所述的可配置的分布式缓存系统,其特征在于,
所述输入模块,其用于在接收由用户提供的所述处置数据的操作的同时,接收由用户提供的一个选定的服务器标识;
所述缓存系统包括:
多个缓存服务器,每个缓存服务器与一个服务器标识建立有一一对应的映射关系;
第二判断模块,其用于对该选定的服务器标识解析,选择与该选定的服务器标识对应的缓存服务器,从而使该缓存服务器完成该处置数据的操作。
6.如权利要求4所述的可配置的分布式缓存系统,其特征在于,
在所述Redis缓存机制中,所述缓存系统还包括:
一个主服务器,所述主服务器用于完成写入操作,所述写入操作包括增加、删除和修改操作中的一种或几种;
若干从服务器,任一个从服务器用于完成查询操作。
7.如权利要求6所述的可配置的分布式缓存系统,其特征在于,所述主服务器用于将数据存储在内存,不对数据进行实时性持久化保存,所述从服务器用于对数据进行实时性持久保存。
8.如权利要求7所述的可配置的分布式缓存系统,其特征在于,包括:
监控工具,其用于监测所述主服务器以及若干的从服务器的运行情况,当所述主服务器异常,则所述主服务器先从其中一个从服务器复制数据,再重启,若任一个从服务器异常,则直接重启。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410855763.4A CN104636436B (zh) | 2014-12-31 | 2014-12-31 | 一种可配置的分布式缓存系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410855763.4A CN104636436B (zh) | 2014-12-31 | 2014-12-31 | 一种可配置的分布式缓存系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104636436A true CN104636436A (zh) | 2015-05-20 |
CN104636436B CN104636436B (zh) | 2018-01-23 |
Family
ID=53215182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410855763.4A Active CN104636436B (zh) | 2014-12-31 | 2014-12-31 | 一种可配置的分布式缓存系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104636436B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708975A (zh) * | 2016-12-06 | 2017-05-24 | 上海艾融软件股份有限公司 | 商品库存信息的处理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101562543A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种缓存数据的处理方法、处理系统和装置 |
CN101764824A (zh) * | 2010-01-28 | 2010-06-30 | 深圳市同洲电子股份有限公司 | 一种分布式缓存控制方法、装置及系统 |
CN102624881A (zh) * | 2012-02-29 | 2012-08-01 | 浙江大学 | 一种面向移动设备的服务缓存系统架构及开发方法 |
US20140317223A1 (en) * | 2013-04-19 | 2014-10-23 | Electronics And Telecommunications Research Institute | System and method for providing virtual desktop service using cache server |
-
2014
- 2014-12-31 CN CN201410855763.4A patent/CN104636436B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101562543A (zh) * | 2009-05-25 | 2009-10-21 | 阿里巴巴集团控股有限公司 | 一种缓存数据的处理方法、处理系统和装置 |
CN101764824A (zh) * | 2010-01-28 | 2010-06-30 | 深圳市同洲电子股份有限公司 | 一种分布式缓存控制方法、装置及系统 |
CN102624881A (zh) * | 2012-02-29 | 2012-08-01 | 浙江大学 | 一种面向移动设备的服务缓存系统架构及开发方法 |
US20140317223A1 (en) * | 2013-04-19 | 2014-10-23 | Electronics And Telecommunications Research Institute | System and method for providing virtual desktop service using cache server |
Non-Patent Citations (2)
Title |
---|
杨浩杰等: "分布式缓存策略模式在高考网上报名系统设计中的应用", 《计算机研究新进展(2010)》 * |
邱祝文等: "基于redis的分布式缓存系统架构研究", 《网络安全技术与应用》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708975A (zh) * | 2016-12-06 | 2017-05-24 | 上海艾融软件股份有限公司 | 商品库存信息的处理方法及系统 |
CN106708975B (zh) * | 2016-12-06 | 2019-10-15 | 上海艾融软件股份有限公司 | 商品库存信息的处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104636436B (zh) | 2018-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10922196B2 (en) | Method and device for file backup and recovery | |
US9009402B2 (en) | Content addressable storage in legacy systems | |
US9747317B2 (en) | Preserving past states of file system nodes | |
CN109714188B (zh) | 基于Zookeeper的配置数据管理方法、设备和存储介质 | |
EP3076307A1 (en) | Method and device for responding to a request, and distributed file system | |
US9081818B2 (en) | SAS fabric discovery | |
KR20140061444A (ko) | 비휘발성 스토리지 장치 세트의 휘발성 메모리 표현 기법 | |
KR102440128B1 (ko) | 통합된 객체 인터페이스를 위한 메모리 관리 장치, 시스템 및 그 방법 | |
CN104050248A (zh) | 一种文件存储系统及存储方法 | |
US10642530B2 (en) | Global occupancy aggregator for global garbage collection scheduling | |
EP3251033A1 (en) | Hybrid data distribution in a massively parallel processing architecture | |
US20170277439A1 (en) | Techniques for Path Optimization in Storage Networks | |
CN104410666A (zh) | 云计算下实现异构存储资源管理的方法及系统 | |
CN105677252B (zh) | 读数据的方法、数据处理方法及相关存储设备 | |
CN104205780A (zh) | 一种存储数据的方法和装置 | |
CN103778120A (zh) | 全局文件标识生成方法、生成装置及相应的分布式文件系统 | |
CN103440204B (zh) | 一种更新文件系统的方法和存储设备 | |
CN104461705A (zh) | 一种业务访问的方法及存储控制器、集群存储系统 | |
US20100057989A1 (en) | Method of moving data in logical volume, storage system, and administrative computer | |
US20200364140A1 (en) | Memory system and non-transitory computer readable recording medium | |
CN102917036A (zh) | 一种基于Memcached的分布式缓存数据同步实现方法 | |
CN107547605B (zh) | 一种基于节点队列的消息读写方法及节点设备 | |
CN104636436A (zh) | 一种可配置的分布式缓存系统 | |
US20150356108A1 (en) | Storage system and storage system control method | |
US10803109B2 (en) | Method and device for reading and writing video data in NAS device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |