[ https://issues.apache.org/jira/browse/TRINIDAD-1747?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12846583#action_12846583 ]
Gabrielle Crawford edited comment on TRINIDAD-1747 at 3/17/10 9:06 PM: ----------------------------------------------------------------------- We'd are proposing a context param to control whether or not to compress the page state, this is similar to the mojarra context param com.sun.faces.compressViewState. see http://wiki.glassfish.java.net/Wiki.jsp?page=JavaServerFacesRI For now we propose an internal context param, "org.apache.myfaces.trinidadinternal.COMPRESS_VIEW_STATE". For now the default will be off. Here are the results of testing the code time(secs) no serialization: 0.57 time(secs) serialization : 0.58 time(secs) compress: 0.587 CPU usage no serialization: 29% CPU usage serialization : 30% CPU usage compress: 30.7% page state memory no serialization: 100M page state memory compress: 9.8M As you can see, zipping greatly reduced the memory being taken up by page state. You may wonder why we tested zipping against serializing the page state. When failover is implemented, values on the session are serialized, so any scalable application is going to be serializing the page state already. If people test this and find that it's working with a minimal performance hit we can consider whether to make this public and if so whether to default it to on. was (Author: gabrielle): We'd are proposing a context param to control whether or not to compress the page state, this is similar to the mojarra context param com.sun.faces.compressViewState. see http://wiki.glassfish.java.net/Wiki.jsp?page=JavaServerFacesRI For now we propose an internal context param, "org.apache.myfaces.trinidadinternal.COMPRESS_VIEW_STATE". For now the default will be off. Here are the results of testing the code no serialization serialization zipping time(secs) 0.57 0.58 0.587 CPU usage 29% 30% 30.7% state memory 100M 9.8M </code></pre> As you can see, zipping greatly reduced the memory being taken up by page state. You may wonder why we tested zipping against serializing the page state. When failover is implemented, values on the session are serialized, so any scalable application is going to be serializing the page state already. If people test this and find that it's working with a minimal performance hit we can consider whether to make this public and if so whether to default it to on. > zip page state to reduce live memory > ------------------------------------ > > Key: TRINIDAD-1747 > URL: https://issues.apache.org/jira/browse/TRINIDAD-1747 > Project: MyFaces Trinidad > Issue Type: Improvement > Reporter: Gabrielle Crawford > Attachments: 1.2.12.1_compressviewstate.patch > > > PageState Objects tend to pin a lot of live memory. These objects are heavy > in live memory and can use a couple of MB per object. This is very big > overhead and becomes much bigger issue in clustering when session replication > happens. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.