[ http://jira.magnolia.info/browse/MAGNOLIA-636?page=comments#action_11763 ]
Fabrizio Giustina commented on MAGNOLIA-636: -------------------------------------------- I just committed a large refactoring that removes the need for a separate cache request by fetching the request result from the filter. This kills all the authentication problems. It's more or less working now, but APIs need to be cleaned up a lot (sorry for the mess, the refactoring was very large and now many methods looks useless or duplicated). The default implementation configured is now the "simple" one (like magnolia 2.x but with a different directory structure, gzipped pages are saved with the .gzip extension - more friendly to debug). other todos: - the ehcache implementation still lacks support for compressed entries - check/setup last modified time and check all the headers - implements flush in simple cache (be sure to not delete wrong directories if somebody has configured an incorrect path!) - make CacheManager configurable - let user override the isCacheable() and cache key generation methods (and CacheKey implementation). Check how path is created in simple cache (now cache key = file path, but we should not rely on that) Give it look and report your impressions, please ;) > Refactored pluggable, manageable cache handling > ----------------------------------------------- > > Key: MAGNOLIA-636 > URL: http://jira.magnolia.info/browse/MAGNOLIA-636 > Project: magnolia > Type: Improvement > Versions: 2.1.3 > Reporter: Andreas Brenk > Assignee: Fabrizio Giustina > Priority: Minor > Fix For: 3.1 > Attachments: cache.patch, cache.tar.gz, config.server.cache.xml > > > I've refactored the CacheHandler to use a pluggable implementation. One being > the existing filesystem based one and another ehcache-based. It optionally > keeps statistics about cache hits and misses is JMX manageable. It's also > completely configurable using the existing cache config node in the > repository. Cache thread usage is configurable using the util.concurrent > Executors (one Thread for each request as it is now or a ThreadPool, or a > single Thread, ...). The ehcache implementation has configurable memory and > disk cache size and lifetime parameters and can use sophisticated expirations > strategies like "first in first out" or "least recently used". > The code is currently for Magnolia 2.1.3. > What is the best way to get this integrated? And what is the interest? -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.magnolia.info/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ---------------------------------------------------------------- for list details see http://www.magnolia.info/en/magnolia/developer.html ----------------------------------------------------------------
