sdx-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sdx-users] débrancher la session?


From: Sylvain Wallez
Subject: Re: [sdx-users] débrancher la session?
Date: Mon, 12 Sep 2005 14:30:23 +0200
User-agent: Mozilla Thunderbird 1.0.6 (Macintosh/20050716)

Frédéric Glorieux wrote:

Est-ce qu'il serait possible de débrancher complètement
le mécanisme de session dans SDX (idéalement, au niveau
d'une application; à défaut, au niveau de SDX)?


De manière simple, non, car c'est un fondement applicatif de SDX. Par contre, pour le problème que vous rapportez (et que vous avez déjà très bien décrit), je ne pense pas que la suppression de la session soit une solution, ni non plus que la session pose problème à une solution.

Ce qu'il faut donc, c'est que certaines URI soit mises en cache. Cocoon a un mécanisme natif de cache parfaitement adapté à ce genre de choses (ex: les étapes de transformations dans le pipeline), à la réserve que, par défaut, une page dynamique (XSP) n'est pas mise en cache car Cocoon. Il ne peut savoir par défaut sur quel critère il faudrait sauvegarder ce qui est généré. Cela vous demande de rentrer un peu dans les entrailles de cocoon, soyez certain que ce ne sera pas un mauvais investissement pour vos applications.

Une rare référence sur ce sujet
<http://wiki.apache.org/cocoon/XSPCachingWithCocoonHEAD>
ou les sources des générateurs
peut-être que Sylvain Wallez saura apporter plus de précisions.


L'exemple donné dans la suite du message est parfait :-)

Mettre une XSP en cache n'est effectivement pas toujours chose facile de part son aspect hautement dynamique. Et les critères (clé et validité) ne peuvent être définis que de manière très spécifique à la page.

Une technique courante est de faire une évaluation la période de mise à jour des sources de données sous-jacentes pour donner une validité de type ExpiresValidity, qui considère la production de la page comme étant valide jusqu'à une certaine date. On garantit ainsi que les pages concernées ne seront pas ré-exécutées dans l'intervalle de temps donné. Combiné à un vidage suivi d'un préremplissage du cache en batch (par exemple la nuit), cela donne d'excellents résultats.

Sylvain

--
Sylvain Wallez                        Anyware Technologies
http://people.apache.org/~sylvain     http://www.anyware-tech.com
Apache Software Foundation Member     Research & Technology Director





reply via email to

[Prev in Thread] Current Thread [Next in Thread]