借鉴dubbo实现自定义缓存

  自定义缓存一般基于ConcurrentMap实现,实现缓存需要注意的点是缓存容器对象

本身依赖于 static final去存储对象,样例: ConcurrentMap<String, GenericServiceCache> cacheHolder

= new ConcurrentHashMap<String, GenericServiceCache>();。虚拟机会在内存加载时

有特殊的初始化,如果通过类似单例方式创建对象会导致需要同步,而同步在高并发下导致性能变差,

更好的缓存实现方式应该是上述方式。

  

  相关连接以及书籍等

     http://dubbo.io/Reference+Config+Cache.htm

     dubbo中类com.alibaba.dubbo.config.utils.ReferenceConfigCache

     书籍 java并发编程实战 42页

待续...

原文地址:https://www.cnblogs.com/freedommovie/p/6126965.html