【发布时间】:2011-12-22 17:25:44
【问题描述】:
虽然这个问题主要涉及 EhCache,但它确实适用于一般的缓存框架(以及普通的旧 缓存)。
EhCache 允许您创建一个单例CacheManager 来管理应用程序中的所有Caches,或者它允许您创建“实例”CacheManager,这意味着它听起来像:多个管理器在使用中在整个应用程序中。
各自的优缺点是什么?乍一看,似乎只有一个单身经理会更干净。
对于为什么需要多个实例管理器,我能想到的唯一可能的原因是,所有位于 CacheManager 中的缓存必须共享相同的配置:相同的大小、使用策略、容量等。所以如果你想要多个缓存,每个缓存配置不同,单例CacheManager 将无法为每个缓存提供不同的缓存配置。
这是确定单例与实例管理器的唯一标准吗?如果不是,还有哪些其他考虑因素?两者都存在明显的性能成本吗?提前致谢!
【问题讨论】:
标签: java caching singleton ehcache