You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Fernando Bellas Permuy <fb...@udc.es> on 2007/07/13 11:04:12 UTC

T5 Performance on a clustered environment

Hi,

I have been evaluating several Java Web frameworks. Regarding Tapestry 
5, I like very much its POJO, non-intrusive programming model.

I am interested in knowing how well Tapestry 5 applications perform on a 
clustered environment. Like most Java Web frameworks, Tapestry 5 handles 
action requests in a two-step process. The first step handles the event. 
For actions that must show results retrieved from the database, this 
means that the event handling method (onXXX) must store results on 
@Persistent attributes in the page object. Then Tapestry redirects the 
browser to an URL that launches the second step (the rendering phase). 
In this second step, the page is dynamically generated by calling getter 
methods on the page object to show the results. Alternatively, the event 
handling method can store parameters, so that getter methods (in the 
second step) retrieve the results form the database. In any case, this 
request processing model means that most action requests store objects 
(@Persistent attributes) in the session.

Does this model scale in a clustered environment??? It probably works 
well in a clustered environment that uses sticky sessions (requests 
directed to a given session are handled by the same machine in the 
cluster), but what about other clustering strategies that use mirror 
machines (session objects must be serialized and sent to mirror machines 
)???. Can Tapestry 5 be used only with the sticky session clustering 
model??? This model is criticized for not being fault-tolerant.

Unlike Tapestry, in frameworks like Struts and JSF, the first step 
inserts objects in the request and *forwards* (the browser is not aware 
of this fact) to another "component" (typically a JSP page) to show the 
results. This request processing model does not use the session to store 
results. Is this model more scalable than the one used by Tapestry 5 on 
a clustered environment???

Thanks in advance!

Fernando.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org