You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Vadim Gritsenko <vg...@hns.com> on 2001/06/11 16:14:40 UTC

Persormance issues: Caching and Pooling

Hello,

I found the roots of the poor cache performance (at least, in
my sitemap).

Cache works great (under 50ms, usually ~20ms) when all required
to assemble the pipeline components are available from the pool.
If pool does not have enough components, it creates them. But, to
create a couple of transformers it takes ~200 ms (PIII 750MHz).

In Excalibur, component pools are created with min and max
set to 2 and 8 respectfully. In my case, it is required to have 
around 10 transformers to assemble a pipeline. In practice, it means
that for EVERY request, it is going to create at least 2 instance
of transformers, and then it destroys these two instances just because
pool reached its maximum. The result is ~250 serving time even for cached
pages, and more - for generated.

What can I do in this situation? 
Or, how to make min/max values configurable?

Thanks for any tips - or any clues how to solve this problem.

For the reference, from the DefaultComponentPool:
--------------------------------------------------------
    public DefaultComponentPool(ObjectFactory factory)
        throws Exception
    {
        super(factory, new DefaultComponentPoolController(1, 2), 2, 8);
    }
--------------------------------------------------------

Thanks,
Vadim

---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org