cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vadim Gritsenko <va...@reverycodes.com>
Subject Re: StoreJanitor (was: Re: Moving reduced version of CachingSource to core | Configuration issues)
Date Thu, 05 Apr 2007 13:57:58 GMT
Ard Schrijvers wrote:
> Vadim,
> 
> I think you are reasoning from a POV of the cocoon cache, but I think you are 
> in the minority compared to the number of users which are using EHCache.

Yes because it is stable and works better and at the time I last looked into it 
JCS was really not an option (it was working with O(n) complexity at the time), 
and EHCache was not completely implemented (as it still the case).

Configurable Store registration with StoreJanitor alleviates somewhat that 
problem, but not solves completely as you still have to properly configure all 
your cache sizes correctly to avoid OOM.

I think you can try combining Cocoon's MRU cache and EHCache to get best of both 
worlds.


> I tried to explain the inevitable OOM of the StoreJanitor in combination of EHCache and
> the event registry in a high volume site. 

That's only highlights that current cocoon default config is not a viable option.


>>> --------o0o--------
>>>
>>> 2) use a different store for repository binary sources
>>> which has only a disk store part and no memory part 
>>> (cached-binary: protocol added)
>> Doesn't it result in some frequently used binary resource 
>> always read from the disk?
> 
> not because as you said, if you also use Apache HTTPD for binary files *and* a reader
with expires. 
> I would be surprised to have a 1.000 concurrent users hitting ctrl-f5 at a large binary
at the same time :-) 

Gotcha.


>>> 3) use a different store for repository sources then for pipeline
>>> cache
>> Hm, what are the benefits?
> 
> because my repository sources are expensive compared to pipeline cache entries. If 
> people do not construct proper pipelines, the pipeline cache entries can flood the cache.


True.


> By using a different store for my repository sources, I make sure, wrong constructed
pipelines
> do not harm me by evicting expensive repository sources. 

I doubt that it is possible at all to make any programming system robust enough 
to withstand bad code. You can try though.

> Do realize that I am talking about high volume sites with many visitors and editor running
live.

Of course. You don't need caching for low volume sites anyway ;)

Vadim

Mime
View raw message