OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [xml-dev] Partitioning?

[ Lists Home | Date Index | Thread Index ]

Didier PH Martin wrote:

 > Didier replies:
 > I checked Cocoon thinking that they developed something new since the
 > last time I checked (last month) and it is the same thing. Cocoon still
 > doesn't support process partitioning. Let me explain why:
 > In cocoon, the xml document doesn't need to include the stylesheet
 > Processing instruction since cocoon uses the selector definition to
 > associate a style sheet to the xml document. So, the xml document
 > doesn't include a style sheet processing instruction.

Fair enough, but I don't think there is anything inside Cocoon which
forbids to add the stylesheet PI inside the document. Using the
selector, it will send the document as-is (including the PI) to the
browser if it supports XSLT, or does the transformation serverside if
the browser doesn't support XSLT.

 > Steven said:
 > Reverse-proxying what? I don't understand your question, please give an
 > example.
 > Didier replies:
 > Now about the reverse proxy stuff it means that in front of an HTTP
 > server stands a transformation server. This latter receives the client's
 > request and performs the transformations. The HTTP server is located on
 > a different machine. This allows to manage the workload between a farm
 > of transformation servers and a farm of HTTP servers. Cocoon is designed
 > to have everything on the same server. This implies that you may
 > experiment scalability problems that could be prevented by allowing to
 > structure the servers in two sets: a) the transformation engines and b)
 > the HTTP server. Moreover, this structure allows you to get the servers
 > to balance the workload among the different HTTP servers.

I'm used at thinking the HTTP service is the front-end service of a pool
of transformation servers. You can have a pool of Cocoon servers
front-ended by an HTTP server (Apache using mod_jk, mod_webapp or using
the proxypass_module). You'll end up with session management issues
however if your application needs session failover robustness, if you
don't set up some central session server, too.

I'm kind of intrugued by your inverse vision of a transformation server
being the front-end of an HTTP server - how would that work in practice?

 > Steven said:
 > Cocoon websites: http://xml.apache.org/cocoon/link/livesites.html and
 > also parts of salon.com, nasa.gov - the users' mailing list sometimes
 > reads like a Fortune 500 directory ;-)
 > Didier replies:
 > Yes indeed. However I would be curious to know what kind of traffic they
 > sustain and if the way they use cocoon could be used in other sites like
 > for instance e-bay. I checked several of these sites and none of them
 > perform a transformation on the client side even if my browser support
 > XSLT 1.0. So, their server do not leverage the client's transformation
 > power and thus these sites doesn't perform process partitioning. Seems
 > that we are still in the middle ages of distributed computing and that
 > we need a "renaissance" renewal.

Doing XSLT transformation serverside seems to be a best practice in the
current era of inconsistent XSLT support by the major browsers (that is:
while some browser do support XSLT, they don't support it in the same
consistent way - my first try at a stylesheet which was interpreted
correctly by both IE & Mozilla was unlucky.

 > Thanks for your help and comments

You're welcome!

Steven Noels                            http://outerthought.org/
Outerthought - Open Source, Java & XML Competence Support Center
stevenn@outerthought.org                      stevenn@apache.org


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS