[jboss-user] [Clustering/JBoss] - Large CPU Increase Using Buddy Session Replication

dmurphy do-not-reply at jboss.com
Thu May 1 14:35:40 EDT 2008


PROBLEM
We are trying to use session replication with ASS 4.0.5 but running into significant performance problems. Specifically, under load we are seeing a 3-4x cpu increase in cpu on the app servers as a result of them trying to do session replication. 

Unfortunately the application is pretty old and somewhat badly written. As a result there are some pretty large object graphs in the user's session. We are trying to remove those in order to be as session replication friendly as possible. In addition the app repeatedly stores the same attribute value back into the session rather than checking if the value already exists there (and avoiding an unnecessary session.set). We could possibly re-factor this but its going to be a lot of work..

There is a possibility of upgrading to a later version of the AS, but not in the short term and so we would really like to get this working with our current version - AS 4.0.5.

BASIC SESSION REPLICATION UNDERSTANDING

Can I get some info on the basic operation of the session cache replication?
(Please note we are using AS 4.0.5 so the info I require must be specific to that version, since I imagine many improvements have been done since that version)

For example, (for the moment without a UseReplQueue queue setup) does replication occur every time the app sets a session attribute? And when it replicates does it then replicate just the value of the attribute that was just set or does it replicate the entire user's session at that point.

OPTIMAL CONFIGURATION

here is the best guess settings we have for the session replication cache (org.jboss.cache.aop.TreeCacheAop)

We use buddy replication with 1 backup node for each node.

REPEATABLE_READ
can we use 'NONE'. Will this help performance? What are the semantics of NONE for a session repl cache?

REPL_ASYNC
This should be the best choice - right?

false
This should be the best choice - right?


Changes we are considering - 

OPTIMISTIC
Will this help the cpu overhead?

true
10000
2000
We are considering to try this since our app updates the same value into the session repeatedly and often. Short of refactoring the app I am hoping maybe the queue mechanism may help?

OTHER SUGGESTIONS
Are there any other suggestions that might help us reduce this very significant overheard of using session replication






View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4148188#4148188

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4148188



More information about the jboss-user mailing list