as you may have noticed, I bundled my quite succesfull efforts to speedup Lenya with large sitetrees at the following wiki:
http://wiki.apache.org/lenya/Large%20number%20of%20documents%20HOWTO I put it under Tutorials/Performance. Note that I left the sitetree.xml concept, did some tests and even with 100 000 docs response times were acceptable (which is all I need). Any comments are welcome ! bye, Dominique On 27/04/07, Michael Ralston <[EMAIL PROTECTED]> wrote:
On 4/26/07, Andreas Hartmann <[EMAIL PROTECTED]> wrote: > Dominique schrieb: > > Hi devs, > > > > I read the posts of someone who used an-EJB backend for the > > repository, but integrating > > such a solution seems a lot of work and needs JBoss. > > I was thinking of replacing the one big "sitetree.xml" with smaller > > ones, one at each subfolder level. This would involve reimpmenting the > > Sitetree interface, > > A site manager implementation that uses an RDBMS (e.g. via Hibernate) > and maybe some caching might also be a reasonable approach. > Basically you just need to store the node properties and > parent-child relations. > At one stage I attempted to get my EJB backend to use a relational model to render the sitetree. It didn't work very well, my biggest problem was trying to delete a node from the tree. As the UnitOfWork is the only thing which ultimately writes to the database, I had to make each SiteTreeNode implement transactionable. The other problem I found, was that requests for sitetree.xml just ask for the contents of the entire file. My ejb sitetree had to output that xml, I tried various methods of caching that but it turned out to be very inefficient. I'm now just storing the sitetree in xml format the same as the normal lenya repository. If anyone has some suggestions of how to change the cocoon pipelines which handle requests for the sitetree, so that it can request a subset of the tree, I'd be interested in trying to implement that. Michael Ralston --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
