[ 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
----------------------------------------------------------------

Reply via email to