[ 
https://issues.apache.org/jira/browse/MYFACES-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13774464#comment-13774464
 ] 

Leonardo Uribe commented on MYFACES-3779:
-----------------------------------------

I have already studied the effect of the encryption over performance and I can 
say it is proportional to the size of the state. Small state, small performance 
overhead. Server side increase server memory usage, but client side increase 
network overhead and CPU usage.

I can see the logic behind this. The problem is we have not agreed how should 
be done this customization, and first of all which problem we are trying to 
solve: better performance or avoid ViewExpiredException. 

If the feature is for performance, decide which views should use client side or 
server side looks like something that should be decided at deployment time. 
Should we use some kind of extra xml file for it? maybe, and it has sense if we 
add in the future the view pool technique. But if the feature is to avoid 
ViewExpiredException, it means there is something we need to fix at the spec 
level, because the application developer should be able to decide that when 
he/she is writing the application code.
                
> Mixed mode(Server+client) for state saving
> ------------------------------------------
>
>                 Key: MYFACES-3779
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3779
>             Project: MyFaces Core
>          Issue Type: New Feature
>            Reporter: Ertio Lew
>
> How about having a mixed mode for state saving whereby state is initially 
> kept on server for a configurable amount of time (so that fast frequent 
> requests are served without transferring the state from client to server 
> several times, the drawback with client side saving) & after that period of 
> time if the page is still alive in browser but it is idle, a javascript 
> request is triggered which asks the server for that state data & now it will 
> be kept on client side, now the client & the server both know that state for 
> this session is there on client. If the page has died & no request has been 
> sent to server asking for state data till that period of time, then state 
> data would be removed from server.
> A further enhancement could be that you could set a fixed amount out of all 
> memory on server that you want to allocate for state saving of all sessions. 
> Till the time that quota remains, state is kept on server using that quota. 
> But when that quota is over all the state information for further sessions is 
> kept using client side state saving. Also a mixed mode.
> Such mixed modes would be very helpful in improving performance, & better 
> utilization of the server resources.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to