• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Using XSLT Processor in high volumn production environment

 
Greenhorn
Posts: 12
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Anyone using any XSLT transformation in prod environment?
So far, I've only tried Apache Xalan, and found the transformation to be slow, expecially for large XML data.
Haven't tried the faster XSLT Processors like XT, Saxxon etc. yet
I really have doubts performance of existing XSLT engines..
 
Richard Pamatmat
Greenhorn
Posts: 12
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
any thoughts??
 
Leverager of our synergies
Posts: 10065
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
DataPower Technology promises "Orders-of-magnitude XSLT performance improvements"
http://www.xsljit.com/
And here is their XSLT processor Benchmark.
[ February 07, 2002: Message edited by: Mapraputa Is ]
 
Sheriff
Posts: 5782
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Here are my two cents worth..

However good the transformation engine is, you should also consider implementing some strategies such as
  • static publishing - apply the transformation offline and keep the presentable document(s) ready instead of invoking the tranformation on demand.
  • Results caching - store output of transformations for reuse.
  • xml monitoring - before invoking the transformation, see if the underlying data( xml ) has really changed. If not, simply return a cached page.
  • Use validation only if necessary.
  • (this one is tough) - implement incremental transformations - instead of applying transformation for the entire xml document, do so only for the document fragment that has changed. This requires you to monitor changes and some ability to compare xml documents in memory to extract only changed fragments. Using JDOM and some DOM event listeners will help you do the groundwork for this feature.


  • Cheers!
     
    mister krabs
    Posts: 13974
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator
    For a dynamic web site, JSPs are going to be a magnitude of performance better.
     
    Ranch Hand
    Posts: 254
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator

    Originally posted by Ajith Kallambella:

  • static publishing - apply the transformation offline and keep the presentable document(s) ready instead of invoking the tranformation on demand.
  • Results caching - store output of transformations for reuse.
  • xml monitoring - before invoking the transformation, see if the underlying data( xml ) has really changed. If not, simply return a cached page.
  • Use validation only if necessary.
  • (this one is tough) - implement incremental transformations - instead of applying transformation for the entire xml document, do so only for the document fragment that has changed. This requires you to monitor changes and some ability to compare xml documents in memory to extract only changed fragments. Using JDOM and some DOM event listeners will help you do the groundwork for this feature.


  • Cheers!


    Ajith,
    how can we do result caching and xml monitering in the J2EE / Servlet environment . are there any samples / examples .
    thanks
     
    I'm gonna teach you a lesson! Start by looking at this tiny ad:
    a bit of art, as a gift, the permaculture playing cards
    https://gardener-gift.com
    reply
      Bookmark Topic Watch Topic
    • New Topic