On Wed, 2007-08-08 at 23:53 +0100, Francisco Passos wrote:
>         Simple jsf apps can be written without session-scoped beans,
>         but it
>         takes some effort to avoid them in larger apps. The
>         t:saveState tag 
>         doesn't really scale ;-)
> 
> It's a shame to hear that... :(
> 
> I guess this means "back to the drawing board".
> 
> What kind of a scale are we talking about that makes t:saveState not
> work as efficiently as one would like? 
> 
> And what is the main impact? Bandwidth? Server processing due to
> constant serialization / desserialization of beans being kept from
> previous requests?
> 
> These are things important to take in consideration when deciding what
> to go for at application design time, because after you commit either
> to session or saveState, it gets hard to go back pretty quick. 

I didn't mean that there was a performance problem with t:saveState;
there isn't one AFAIK. Although as an app gets more complex, the set of
backing beans relevant to a page probably increases, and that will of
course increase the amount of data that needs to be serialized and held
by the t:saveState component. I guess that there is little impact when
using server-side JSF state as that data needs to be held in either the
session or the tree one way or another (though the JSF tree always gets
serialized while the http session only gets serialized when memory is
short). However if client-side state is being used then obviously that
would increase bandwidth.

However when an app gets up to 50 or 100 pages I expect that managing
state by adding t:saveState tags all over the place will become hard to
maintain. Some kind of "conversation" scope should be much easier to
work with.

Regards,

Simon


Reply via email to