You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Joerg Heinicke <jh...@virbus.de> on 2003/08/22 00:16:47 UTC

TraxTransformer Caching (was: basic form tutorial)

> The benefit of this is that all parameters are available to your 
> stylesheet automatically, but there is a side-effect with respect to 
> caching to consider.  With use-request-parameters, the pipeline is 
> cached for every combination of all your request parameters which you 
> may not want.  Say you use param1=value1&param2=value2 where this 
> pipeline only uses param1 and another pipeline (aggregated or cincluded) 
> uses param2.  With use-request-parameters, you will get a different 
> cache entry for param1=value1&param2=value3 when you really don't need 
> it.  Might not matter in your case, but something to keep in mind.
> 
> Geoff

Hello Geoff,

are you sure about this? Is there any difference between using request 
parameters and passing parameters from sitemap? I always thought that 
the parameter values passed to the stylesheet will influence the 
caching, but that's not true. I controlled it via the StatusGenerator. 
There is only one object per stylesheet in the store.
Maybe it's different for request parameters.

Joerg


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


Re: TraxTransformer Caching

Posted by Joerg Heinicke <jh...@virbus.de>.
Ok, it works as expected. Every different parameter and parameter value 
causes a new cached object. Strange. The test was done with Cocoon 2.0.4 
not so long ago - and this contains the same code.
We had performance problems in our application and searched for the 
causers. One (expected) issue was the passing of parameters to the 
transformer. But, surprise, only one object per stylesheet was on the 
store. Maybe we have to redo the test ...

FYI: We have our self-written non-cachable generator in use. The 
performance issue was solved by switching to non-caching pipeline. 
Improvement by factor 10 for little XML files (600 ms to 60 ms). And we 
switched to non-caching streaming pipelines too (readers) to circumvent 
the expires header for cached responses 
(http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17924), what improved 
the performance feelings of the users. The application is not used by 
many users, so the browser caching of the resources is much more 
important than server side caching. By using Mozilla XUL almost 
everything is static besides the RDF datasources.

Joerg

>>>> The benefit of this is that all parameters are available to your 
>>>> stylesheet automatically, but there is a side-effect with respect to 
>>>> caching to consider.  With use-request-parameters, the pipeline is 
>>>> cached for every combination of all your request parameters which 
>>>> you may not want.  Say you use param1=value1&param2=value2 where 
>>>> this pipeline only uses param1 and another pipeline (aggregated or 
>>>> cincluded) uses param2.  With use-request-parameters, you will get a 
>>>> different cache entry for param1=value1&param2=value3 when you 
>>>> really don't need it.  Might not matter in your case, but something 
>>>> to keep in mind.
>>>>
>>>> Geoff
>>>
>>> Hello Geoff,
>>>
>>> are you sure about this? Is there any difference between using 
>>> request parameters and passing parameters from sitemap? I always 
>>> thought that the parameter values passed to the stylesheet will 
>>> influence the caching, but that's not true. I controlled it via the 
>>> StatusGenerator. There is only one object per stylesheet in the store.
>>> Maybe it's different for request parameters.
>>>
>>> Joerg
>>
>> No, I'm not sure - it's been a while since I've looked into it.  Can 
>> anyone confirm either way?
>>
> I can confirm that, from looking at the source of the TraxTransformer, 
> particularly getLogicSheetParameters() which is called by getKey(), that 
> the code is in place to do what has been described. The code includes 
> all parameters to the transformer when building the key. Then, if use 
> request parameters is specified, it adds all request parameters to the 
> key. Then the same for sessions and cookies. Whether or not it works, 
> now that's another question.
> 
> Regards, Upayavira


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


Re: TraxTransformer Caching

Posted by Upayavira <uv...@upaya.co.uk>.
Geoff Howard wrote:

>Quoting Joerg Heinicke <jh...@virbus.de>:
>
>  
>
>>>The benefit of this is that all parameters are available to your 
>>>stylesheet automatically, but there is a side-effect with respect to 
>>>caching to consider.  With use-request-parameters, the pipeline is 
>>>cached for every combination of all your request parameters which you 
>>>may not want.  Say you use param1=value1&param2=value2 where this 
>>>pipeline only uses param1 and another pipeline (aggregated or cincluded) 
>>>uses param2.  With use-request-parameters, you will get a different 
>>>cache entry for param1=value1&param2=value3 when you really don't need 
>>>it.  Might not matter in your case, but something to keep in mind.
>>>
>>>Geoff
>>>      
>>>
>>Hello Geoff,
>>
>>are you sure about this? Is there any difference between using request 
>>parameters and passing parameters from sitemap? I always thought that 
>>the parameter values passed to the stylesheet will influence the 
>>caching, but that's not true. I controlled it via the StatusGenerator. 
>>There is only one object per stylesheet in the store.
>>Maybe it's different for request parameters.
>>
>>Joerg
>>    
>>
>
>No, I'm not sure - it's been a while since I've looked into it.  Can anyone 
>confirm either way?
>
I can confirm that, from looking at the source of the TraxTransformer, 
particularly getLogicSheetParameters() which is called by getKey(), that 
the code is in place to do what has been described. The code includes 
all parameters to the transformer when building the key. Then, if use 
request parameters is specified, it adds all request parameters to the 
key. Then the same for sessions and cookies. Whether or not it works, 
now that's another question.

Regards, Upayavira



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


Re: TraxTransformer Caching (was: basic form tutorial)

Posted by Geoff Howard <co...@leverageweb.com>.
Quoting Joerg Heinicke <jh...@virbus.de>:

> > The benefit of this is that all parameters are available to your 
> > stylesheet automatically, but there is a side-effect with respect to 
> > caching to consider.  With use-request-parameters, the pipeline is 
> > cached for every combination of all your request parameters which you 
> > may not want.  Say you use param1=value1&param2=value2 where this 
> > pipeline only uses param1 and another pipeline (aggregated or cincluded) 
> > uses param2.  With use-request-parameters, you will get a different 
> > cache entry for param1=value1&param2=value3 when you really don't need 
> > it.  Might not matter in your case, but something to keep in mind.
> > 
> > Geoff
> 
> Hello Geoff,
> 
> are you sure about this? Is there any difference between using request 
> parameters and passing parameters from sitemap? I always thought that 
> the parameter values passed to the stylesheet will influence the 
> caching, but that's not true. I controlled it via the StatusGenerator. 
> There is only one object per stylesheet in the store.
> Maybe it's different for request parameters.
> 
> Joerg

No, I'm not sure - it's been a while since I've looked into it.  Can anyone 
confirm either way?

Geoff

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