Re: [Hypercontent-users] HyperContent slow performance with large project
Brought to you by:
alexvigdor
From: Alex V. <av...@co...> - 2005-07-05 16:41:22
|
Hi Juris, Having looked at your project briefly, I would say the first optimization you should focus on is your use of includes. For example, to create the 36kb page "/studijas/index.html", you are processing 3226 includes adding up to 4.4 MB of data. The first thing to check is whether you need the absolute patterns /*/*/* /*/* or whether you could use relative paths like */* * If you need to use the absolute patterns in order to find occasional references to content outside of the current directory, it is advisable to consider some possible design changes: 1) You can dynamically include the data of any single file using the xsl "document" function 2) You can dynamically include the metadata of any single file using the xsl "document" function by appending ".rdf" to the file path 3) You can use the navigation/site map feature to manage ad-hoc links between sections In some cases it is possible to implement 1) or 2) quite easily; switching to 3) has a lot of performance and usability benefits, but can also require a lot more work to transition from an existing site. It looks like there may be some pages where you are including /*/* /*/*/* /*/*/*/* but in XSL, looking only for the index pages of ancestor directories; you can achieve this much more efficiently by including index.xml ../index.xml ../../index.xml There are also some XSL optimizations you could make, like using more keys, e.g. <xsl:key name="directory" match="/cms:wrapper/cms:include" use="@directory"/> to lookup includes by directory, rather than calling /cms:wrapper/cms:include/[(@directory=$dir) and (...)] you would call key('directory',$dir)[(...)] But I believe the bulk of your performance problems come from the includes! Approach it one doctype at a time, try to use the most specific and/or relative patterns as possible, and test any optimizations carefully to avoid unintended consequences. You can always configure a "text/xml" output from any of your doctypes with all of your includes and no transformation, so you can see how much data is being passed into your XSL. Good luck! Alex On Jul 4, 2005, at 9:22 AM, Juris Treibahs wrote: > Hello, Alex! > Thanks for your answer to my last post. I set up HyperContent 2.0b2 > succsessfully. We have large project for University of Latvia > http://www.lu.lv. In my opinion it is rather complicated. This project > works with HyperConten2 very slow. I have to wait for some time for > page display when navigating directoties and previewing the result of > transformation of xml files, saving, processing changes. Trying on > different OS and server versions gave same results. In earlier posts I > found that performance is related to number of includes and XSL > structure. Could you take a look at it? I made a copy the part of the > project and put it on server > http://portaldv.lanet.lv/rss/cms_project/lu_v4.zip > > Best wishes, > Juris Treibahs > University Of Latvia > > > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click > _______________________________________________ > Hypercontent-users mailing list > Hyp...@li... > https://lists.sourceforge.net/lists/listinfo/hypercontent-users |