Andreas Hartmann wrote:
Andreas Hartmann schrieb:
Andreas Hartmann schrieb:

[...]

Unfortunately we need some resource-exists selector cascades in global-sitemap.xmap to stay backwards compatible, and therefore the pipelines are not cacheable. When I find the time I'll do some load testing to find out what happens when we have only static and cacheable menu XML processing.

* Powerbook G4 1.5 Ghz
* Standard Jetty setup
* 1 thread
* 20 requests to /default/authoring/index.html

2.0.1:                             avg. 1467 ms (41/min)
2.0.2-dev with some modifications: avg.  929 ms (65/min)


I didn't explicitly check if the menu XML is cached, but the authoring environment feels notably faster. IMO it's worth the update. Maybe we'll find a way to leverage caching without losing backwards compatibility (e.g. using include fallback elements).

In fact the XML hadn't been cached, because the IncludeTransformer's MultiSourceValidity isValid() method returns "invalid" if one of the included sources was not found. I removed the "offending" modules from publiction.xml. Now the XML is cached, but the load test results are virtually identical. I'll do some more investigation.

I did some more tests - maybe I did missed something before, but now I get different results which resemble my expectations.

* same setup as above
* Lenya 2.0.2-dev without modifications
* Fallback source URI caching enabled

a) standard publication.xml:                         avg. 1200 ms
b) publication.xml contains only modules with menus: avg.  800 ms

In case b), the aggregated menu XML is cached because the include transformer didn't come across any non-existing sources and therefore the validity could be computed.

At the moment b) can't be enforced because the publication.xml entries are also used for i18n. But I'm confident that we would find another way to assemble the modules i18n catalogue.

WDYT - can we require that publication.xml contains only modules which provide a menu, and throw an exception otherwise?

-- Andreas



I would assume you could get away with a blank menu? Still, requiring a menu seems to be a bit of a kludge when it isn't necessary for the module (prettyprinting for example).

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to