Java, XML, XSLT: Performance and Scalability


DevX Home    Today's Headlines   Articles Archive   Tip Bank   Forums   

Results 1 to 2 of 2

Thread: Java, XML, XSLT: Performance and Scalability

Hybrid View

  1. #1
    Vijay Guest

    Java, XML, XSLT: Performance and Scalability


    Folks,

    I am designing a web based application whose database is an XML file(s).
    Depending on the user's login and request parameters, one or more stylesheets
    (XSLT) are applied on the XML file to filter (transform to another XML vocabulary),
    process and then present (convert to HTML) the user with appropriate views
    of the data. The user may also edit the presented content which means that
    the XML file on the server needs to be updated so that the change is reflected
    in all subsequent requests. Also, one or more users may attempt to edit the
    content at the same time.

    I am using Java, JDOM and Xalan to handle XML parsing and transformations.
    The XML file (database) can get bulky and upto 1MB. Also, the system must
    be able to handle upto 200 concurrent requests.

    What are some potential problems I can expect especially due to the size
    of the XML file, large number of concurrent users and the number of transformations
    before delivering a response (output) to the browser? How do I deal with
    many concurrent users accessing/editing the same XML file at the same time.
    One thought is to capture an application level "checkout" status. But then,
    does the "checkout" apply only when a user attempts to edit or even when
    there is a query/view request? Any input in this regard along with possible
    solutions are very much appreciated.

    regards,
    Vijay

  2. #2
    MarkN Guest

    Re: Java, XML, XSLT: Performance and Scalability


    Using an XML file to replace the functionality of a database (XML, Relational,
    OO) is not a good idea. If you can't afford an XMLDB or OODB then do something
    like store your objects in a relational database like MySQL, use a tool like
    Hibernate or Castor to create your objects from the datastore and a tool
    like Castor to create XML from objects.



    "Vijay" <ae5110@wayne.edu> wrote:
    >
    >Folks,
    >
    > I am designing a web based application whose database is an XML file(s).
    >Depending on the user's login and request parameters, one or more stylesheets
    >(XSLT) are applied on the XML file to filter (transform to another XML vocabulary),
    >process and then present (convert to HTML) the user with appropriate views
    >of the data. The user may also edit the presented content which means that
    >the XML file on the server needs to be updated so that the change is reflected
    >in all subsequent requests. Also, one or more users may attempt to edit

    the
    >content at the same time.
    >
    > I am using Java, JDOM and Xalan to handle XML parsing and transformations.
    >The XML file (database) can get bulky and upto 1MB. Also, the system must
    >be able to handle upto 200 concurrent requests.
    >
    > What are some potential problems I can expect especially due to the

    size
    >of the XML file, large number of concurrent users and the number of transformations
    >before delivering a response (output) to the browser? How do I deal with
    >many concurrent users accessing/editing the same XML file at the same time.
    >One thought is to capture an application level "checkout" status. But then,
    >does the "checkout" apply only when a user attempts to edit or even when
    >there is a query/view request? Any input in this regard along with possible
    >solutions are very much appreciated.
    >
    >regards,
    >Vijay



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center
 
 
FAQ
Latest Articles
Java
.NET
XML
Database
Enterprise
Questions? Contact us.
C++
Web Development
Wireless
Latest Tips
Open Source


   Development Centers

   -- Android Development Center
   -- Cloud Development Project Center
   -- HTML5 Development Center
   -- Windows Mobile Development Center