MemoryConstrianedCacheManager和EhCacheManager之间的区别

时间:2017-11-14 09:51:19

标签: shiro java-security security-framework

我在tomcat中部署了两个以上的Web应用程序。其中一个应用程序使用apache shiro进行会话管理。我需要从第一个应用程序获取会话ID,并在我的其他应用程序中使用它。

例如

第一个应用程序示例使用 MemoryConstrainedCacheManager

Shiro.ini

cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
securityManager.cacheManager = $cacheManager

对于第二个应用程序,如果我使用相同的第一个

配置
cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
securityManager.cacheManager = $cacheManager

SSO会话管理无效。我需要再次登录。

如果我在两个应用程序中使用EhcacheManager,通过在xml中配置缓存工作,

ssoCacheManager = org.apache.shiro.cache.ehcache.EhCacheManager 
ssoCacheManager.cacheManagerConfigFile = classpath:ehcache.xml
securityManager.cacheManager = $ssoCacheManager 

MemoryConstrained和EHCache管理器有什么区别?我可以使用内存受限的缓存管理器将会话ID存储在tomcat容器中,并在其他Web应用程序中使用它。

1 个答案:

答案 0 :(得分:0)

EHCache有很多功能,请看一下该网站。 MemoryConstrainedCacheManager基本上只是一个由有限大小的Map支持的缓存。