显示标签为“cache”的博文。显示所有博文
显示标签为“cache”的博文。显示所有博文

2015年8月23日星期日

Spring cache

官方doc:
http://spring.io/guides/gs/caching/
http://docs.spring.io/spring/docs/current/spring-framework-reference/html/cache.html

Blog介绍:https://www.ibm.com/developerworks/cn/opensource/os-cn-spring-cache/

2015年7月19日星期日

J2Cache学习记录

视频介绍:http://v.youku.com/v_show/id_XNzAzMTY5MjUy.html
简单介绍:http://www.oschina.net/question/12_140335
吐槽:http://blog.csdn.net/chenleixing/article/details/44629005


问题:
为什么只使用独立的Java缓存框架Ehcache不行?
Ehcache这类缓存框架,是一个进程内的缓存框架,如果是集群的话会导致缓存数据不同步。
缓存数据不同步有两个解决办法:
1. 集中式缓存,直接将 Ehcache 换成 Redis 这类产品。如果访问量不大是没问题,访问量大,大量的缓存数据访问使得应用服务器和缓存服务器之间的网络I/O成为瓶颈。
2. Ehcache 的分布式,节点间大量的数据复制带来额外的开销,在节点多的情况下此问题越发严重。
因此,出现了两级缓存框架J2Cache,引入集中式缓存Redis,通过进程内的Ehcache 缓存来缓解网络 I/O 瓶颈。同时也降低集中式缓存服务器的压力。

拓扑结构:

数据流:
缓存同步:

源码阅读:
J2Cache使用JGroups进行组播。https://github.com/belaban/JGroups
使用FST进行对象序列化。https://github.com/RuedigerMoeller/fast-serialization

(更新中)