简单描述一下Ehcache的实现

近期看Ehcache的代码。感觉代码看得还是比较轻松,但是对于整体的把握容易在深入代码的时候而迷失。

于是就大体画了一下Ehcache内部的类图,以此来加深自己对Ehcache实现的理解。


可以看出,Ehcache的核心是CacheManager.
每当对cache进行操作的时候,通过CacheManager获得对应的cache.然后进行对应的操作。
而cache又关联了RegisteredEventListeners(里面包含了一些CacheEventListener,当在cache上有operation发生时,这些listener就被通知。这也是ehcache实现分布式缓存的实现方式。当前ehcache支持三种类型的CacheEventListenr:jms,rmi,jgroup.这也就是ehcache三种分布式缓存的实现方式),于是就实现了cache的统一管理。

而CacheManagerPeerListener的作用是监听其他缓存节点发送过来的消息。
  CacheManagerPeerProvider的作用是管理节点(包括节点的注册和列举).
  在CacheEventListenr回调的时候,会通过cache获取cachemanager,然后通过cachemanager
  获取CacheManagerPeerProvider,从而向其他节点发送消息。






 

你可能感兴趣的:(cache,jms)