0 Replies Latest reply on Oct 20, 2011 3:25 AM by mike82

    Is cluster needed?

    mike82

      hi,


         I have a very powerful machine, over 60 cores but when there is a traffic peak, it goes down. In thread dumps I see a lot of:





      Thread: ajp-0.0.0.0-8009-14 : priority:5, demon:true, threadId:115, threadState:BLOCKED

      - waiting on 0x7406ce55 (a java.util.WeakHashMap)
      org.jboss.naming.ENCFactory.getObjectInstance(ENCFactory.java:114)

      and




      Thread: ajp-0.0.0.0-8009-2 : priority:5, demon:true, threadId:103, threadState:BLOCKED

      - waiting on 0x672e12af (a java.util.HashMap)
      org.jboss.metadata.web.jboss.JBossWebMetaData.getRunAsIdentity(JBossWebMetaData.java:839)



      and



      Thread: ajp-0.0.0.0-8009-14 : priority:5, demon:true, threadId:115, threadState:BLOCKED

      - waiting on 0x7406ce55 (a java.util.WeakHashMap)
      org.jboss.naming.ENCFactory.getObjectInstance(ENCFactory.java:114)


      I asked already in the past, what could be the reason, but no-one replied.


      It looks to me it is just JBoss/Seam limitation, not the best way it's handling high load in terms of accessing resources. In my Tomcat's server.xml I have set maxThreads to 1200 and problems starts when the number is over 700. For today I lowered it to 300 to see if it helps - however, I think some of customers will simply get http 503 anyway.


      So the solution to me is to quick set up jboss cluster for my seam application. Is it enough, to configure load balancing at Apache and run my second jboss on same machine with different set of ports? I don't need session replication in Seam, just want to split load on two jbosses, so I don't see those waitings.


      What do you think?