cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "lrs" <...@realtime.net>
Subject Re: speeding up svg serialization?
Date Wed, 09 Oct 2002 16:34:23 GMT
Hi Joerg,

From: "Joerg Heinicke" <joerg.heinicke@gmx.de>
> Hello Leona,
>
> we use SVG generated PNGs at www.ekommunen.de too and the serialization
> is really fast except the very first request on a SVG serializer. I
> guess this is because of the first instantiation of Batik, but maybe
> somebody can say something more about this. Is it really a problem if
> the very first user accessing the very first time the site has to wait
> some seconds more?

It wouldn't be so bad if it was just the first user, but in our
architecture,
every user is running Tomcat and Cocoon, thus every user is also a
first user! I'll have to do some research on Batik, but hints would be
welcome.

> Maybe therefore you can optimize your sitemap or the XSLT. For example
> you are passing the request parameters and some other parameters to the
> stylesheets, which prevents effective caching. Stylesheets are cached in
> combination with passed parameters. We changed this by storing such
> parameters in an extra XML, which is aggregated in the sitemap. So there
> is really only one instance of the stylesheet in the cache.

Are you talking about storing the parameters in an XML file? What I
think I really need is the concept of a session object that can pass
parameters between pages.

> Furthermore I see
>
> <add_image
> img_file="{concat('http://localhost:8080/GS/name.jpg?display=',
./Role)}"/>
>
> in the stylesheets, which can be simplified to
>
> <add_image img_file="http://localhost:8080/GS/name.jpg?display={Role}"/>

This was a beginners mistake which has been fixed.

> And the third point: You have a template creating an <add_image/>
> element and one matching one them. Hmm, I can only guess, but are you
> storing <add_image/> in a Result Tree Fragment, which you convert back
> to a node set and apply a template to it? If it is so, maybe there are
> better processings possible.
>

<add_image/> generates the HTML output which goes to the serializer.

In general the Cocoon/XML/Java parts perform well. I am new to Cocoon,
so, of course, there is room for improvement, but it really is the svg
processing
that slows it down the first time.

> Regards,
>
> Joerg
>
Thanks for your help,
Leona

> lrs wrote:
> > Hi All,
> >
> > I have an application that is generating some labels for a table
> > using svg. All it does is generate some text and rotate it 180.
> > This is the sitemap fragement that applies to this function.
> >
> >    <map:match pattern="name.jpg">
> >      <map:generate src="gs.xml"/>
> >         <map:transform src="page2svg.xsl">
> >           <map:parameter name="use-request-parameters" value="true"/>
> >           <map:parameter name="pagename" value="name.jpg"/>
> >           <map:parameter name="display" value="{display}"/>
> >         </map:transform>
> >      <map:serialize type="svg2jpeg"/>
> >    </map:match>
> >
> > which is called from this piece of XSL.
> >   <xsl:template match="Role" name="Role">
> >      ...
> >             <add_image
> > img_file="{concat('http://localhost:8080/GS/name.jpg?display=',
./Role)}"/>
> >     ...
> >   </xsl:template>
> >
> > and <add_image> is a simple template:
> >
> >   <xsl:template name="add_image" match="add_image">
> >     <xsl:element name="img">
> >       <xsl:attribute name="src">
> >         <xsl:value-of select="@img_file"/>
> >       </xsl:attribute>
> >     </xsl:element>
> >   </xsl:template>
> >
> > The problem is that the rendering of the svg is sooo slow. It takes
> > up to 15 seconds to generate as few a 8 labels, whereas the table
> > itself (plain HTML) can have hundreds of cells, yet render in as
> > little as 2 seconds. Subsequent views of the page are faster
> > because the images are cached, but I would like to get better
> > performance on the first viewing.
> >
> > Does anyone know if this can be optimized, either in the configuration
> > files, the sitemap, the XSL or some other method?
> >
> > Any help would be greatly appreciated.
> >
> > Thanks very much,
> > Leona Slepetis
>
>
> ---------------------------------------------------------------------
> Please check that your question  has not already been answered in the
> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
> To unsubscribe, e-mail:     <cocoon-users-unsubscribe@xml.apache.org>
> For additional commands, e-mail:   <cocoon-users-help@xml.apache.org>
>
>



---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <cocoon-users-unsubscribe@xml.apache.org>
For additional commands, e-mail:   <cocoon-users-help@xml.apache.org>


Mime
View raw message