-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Caching
Calvin edited this page Nov 13, 2013
·
10 revisions
##Overview 缓存有几种模式,按需求灵活采用:
- 简单的JVM内ConcurrentHashMap,而Guava的CacheBuilder还加入了LRU的最大元素限制,超时等一系列功能。
- Ehcache这种JVM内的正式缓存实现,有更丰富的功能,而且支持集群同步。
- Memcached这种中央式缓存,优点是无限的扩展能力,本身性能良好,缺点是有远程调用。
- 还有一种是Memcached,NOSQL兴起前,Java世界的Data Grid曾经也很吃香。(见后)
##Details
- Guava CacheBuilder, 见Guava Cache.
- Ehcache, 见Ehcache.
- Memcached, 见Memcached.
##Data Grid 比如Spring收购的GemFire,Oracle那个天价的Coherence,JBoss替代JBossCache的Infinispan 还有Hazelcast,可以由多个JVM组成一个大的集群,比如8个JVM,各拿1G内存出来,可以组成一个复制份数是1,可failover的总容量4G的集群。 而ehcache只能做集群内容同步,无论多少服务器,client能访问的还是本地JVM上那1G的内容。
公司的项目里用HazelCast,一个土耳其公司的产品。