Cache各种缓存特性

本文探讨了Cache的各种特性,包括时间记录、过期时间、清除策略、命中率、分级Cache、分布式Cache以及锁、事务和数据同步。重点介绍了memcached和JBoss Cache的高级特性,如memcached的远程Cache实现、数据一致性,以及JBoss Cache的POJO Cache、对象同步和事务支持。同时,讨论了Cluster Cache的数据同步方法和中心缓存与集群缓存的区别。还深入解析了ORM中的Cache使用,特别是Query Cache的优化策略。
摘要由CSDN通过智能技术生成
各技术基本特性种cache


我对这些Open Source Cache的一些工作原理,了解得比较多。具体配置和使用细节,了解的比较少。
本文主要讲述的也是Cache的特性和工作原理,而不是一个安装、配置、使用的入门手册。
本文简述Cache的一般特性,详述Cache的高级特性,比如,分布式Cache,关联对象的Cache,POJO Cache等。
阅读本文需要具备基本的Cluster知识,ORM知识,数据库事务知识。本文不解释这些基本概念。
-------------------------------------------------------
Cache Features
首先,我们来浏览一下常见的Cache。
这个链接给出了常用的Java Open Source Cache。
http://java-source.net/open-source/cache-solutions

memcached,JBoss Cache,SwarmCache,OSCache,JCS,EHCache等开源项目的出镜率和关注率比较高。
memcached和其他几个不同,后面会详述。
JBoss Cache的特点是,功能大而全,可算是Cache集大成者,几乎什么都支持。
其余的几个都很轻量。SwarmCache,OSCache,JCS支持Cluster。EHCache不支持Cluster。

下面列出Cache的基本特性。
1. 时间记录
数据进入Cache的时间。

2. timeout过期时间
Cache里面的数据多久过期

3. Eviction Policy 清除策略
Cache满了之后,根据什么策略,应该清除哪些数据。
比如,最不经常被访问的数据,最久没有访问到的数据。

4. 命中率
Cache的数据被选中的比率

5. 分级Cache
有些Cache有分级的概念。比如,几乎所有的Cache都支持Region分区的概念。可以指定某一类的数据存放在特定的Region里面。JBoss Cache可以支持更多的级别。

6. 分布式Cache
分布在不同计算机上的Cache

7. 锁,事务,数据同步
一些Cache提供了完善的锁,事务支持。

以上特性,大部分Cache都有相应的API支持。这些API很直观,也很简单,本文不打算展开讲述。
本文下面主要介绍,memcached和JBoss Cache这两个具有代表意义的Cache的高级特性,包括分布式Cache的支持。

-------------------------------------------------------

memcached
http://www.danga.com/memcached/

memcached是一个Client Server结构的远程Cache实现。
Server是用C写的,提供了多种语言的客户端API,包括Java, C#, Ruby, Python, PHP, Perl, C等多种语言。
memcached主要使用在Shared Nothing Architecture中。应用程序通过客户端API,从memcached server存取数据。
典型的应用,比如,用memcached作为数据库缓存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值