Details
-
Sub-task
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
None
-
None
-
None
-
None
Description
This article describes performance differences on Genshi-like templates:
http://genshi.edgewall.org/wiki/GenshiPerformance
Using the advertised Genshi compiler might be an option for us, as we are not using any py:match.
http://code.google.com/p/genshi-compiler/wiki/features
It advertises an improvement of 40 times.
But we are using xi:include, which is not supported by the Genshi Compiler.
There might be a solution to xi:include:
"You can work around this by inserting a <%python %> processing instruction importing the compiled module corresponding to the template you wanted to include."
But somehow I ask myself, why the compiler cannot do it automatic...
First a bit of research should be done on how/where Genshi processing can be improved, because that is one place where some time is spend.
An HTTP response with HTML from CherryPy spends:
- in average 60% in the Genshi template processing for the almost static pages (like User-Login, Get Analyzer Interface).
These pages have an average response time for the main HTTP GET of about 100ms. - in average 19% for the complex pages (like View Operations, Project Structure, even less for Burst page).
These are the pages where we get a longer response time for the user (0.5 - 3 sec), thus the pages were improvement is most needed, but will mainly come from reorganizing the processing part of the code