2017-11-14 5 views
0

Ich habe mehr als zwei Web-Anwendungen in Tomcat bereitgestellt. Eine der Anwendungen verwendet Apache Shiro für die Sitzungsverwaltung. Ich muss die Sitzungs-ID von der ersten Anwendung abrufen und in meinen anderen Anwendungen verwenden.Unterschied zwischen MemoryConstrianedCacheManager und EhCacheManager

Für Beispiel

1. Anwendungsbeispiel verwendet MemoryConstrainedCacheManager

Shiro.ini

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

Für 2st Anwendung, wenn ich benutze die gleiche Konfiguration des 1.

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

SSO-Sitzungsverwaltung funktioniert nicht. Ich muss mich erneut einloggen.

Wenn ich EhcacheManager verwenden, um sowohl in der Anwendung von Cache in xml seine Arbeits Konfiguration

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

Was ist der Unterschied zwischen MemoryConstrained und EHCache Manager? Kann ich den speicherbeschränkten Cache-Manager verwenden, um die Sitzungs-ID im Tomcat-Container zu speichern und in anderen Webanwendungen zu verwenden.

Antwort

0

hat viele Funktionen, werfen Sie einen Blick auf die Website. Der MemoryConstrainedCacheManager ist im Grunde nur ein Cache, der von einer Map mit begrenzter Größe unterstützt wird.