Distributed Caches:
http://www.danga.com/memcached/
Tangosol - distributed, commercial
JBoss cache
gemstone
swarm
bamboo
Local Caches:
oscache
ehcache
jcs
jcache
Cache API abstraction:
get(key)
put(key, value)
lock(key) - this is used for loading once: first one coming in does the loading, others waits until the first one is done.
Integration:
1. Cache concern should be sealed in AOP or a decorator, should be separated from the normal data loading.
2. Distributed caches should have a remote/JMS interface to refresh/flush data
http://www.danga.com/memcached/
Tangosol - distributed, commercial
JBoss cache
gemstone
swarm
bamboo
Local Caches:
oscache
ehcache
jcs
jcache
Cache API abstraction:
get(key)
put(key, value)
lock(key) - this is used for loading once: first one coming in does the loading, others waits until the first one is done.
Integration:
1. Cache concern should be sealed in AOP or a decorator, should be separated from the normal data loading.
2. Distributed caches should have a remote/JMS interface to refresh/flush data