1 Reply Latest reply on Mar 1, 2011 3:03 PM by jaganmohacgg

    ajp thread takes more cpu time?

    jaganmohacgg

      Hi,

      We are facing some issue while doing performance testing for our application.

       

      We have 500 different users using 500 different customer names for searching and viewing the details.

       

      The problem we are facing is with the AjpProcessor.read(Socket...) taking lot of CPU time.

      ajp.read_issue().JPG

       

      Attached is the javacore/dump if needed.

       

      We have the below parameter after going thru various performance link on the community and sites.

       

      So far, We changed the following parameters from default values at various levels:

      Jboss

      <max-pool-size>

      100

      Jboss

      maxThreads(AJP)

      500

      Jboss

      enableLookups(AJP)

      FALSE

      Jboss

      enableSessionPath(AJP)

      TRUE

      Apache

      ServerLimit(prefork.c)

      1000

      Apache

      MaxClients(prefork.c)     

      1000

      Apache

      MaxClients(worker.c)     

      1000

      Oracle

      SGA

      8 GB

      Oracle

      Number of Processess

      1000

      Oracle

      PGA

      1 GB

      OS(Linux)

      fs.file-max

      1000000

      LDAP

      sizelimit

      unlimited

       

      let us know if we have any more changes or additions to the above table at any level.

       

      Any body encountered/faced this issue earlier, please let us know.

       

      Thanks in advance,

      Jagan.

        • 1. ajp thread takes more cpu time?
          jaganmohacgg

          ahh!!! finally we shooted the star...but!!!!

           

          It seems like the AJP almost maintains persistent connections, which reduces the scalability, Enabling APR(Apache Portable Runtime) with AJP improves its performance as this polls and closes the sockets, uses adv I/O, shared memory and moreover it is native processing.

          The channel HTTP+AJP also can be considered.

          http://docs.jboss.org/jbossweb/latest/apr.html

           

          After we enabling APR+AJP, the issue is not seen on the jvisualvm cpu time, but then the cpu still hits to 100% and now showing on Oracle parsing.

           

          Note*:There could be bugs around these connectors, try using the latest ones.

           

          BUT, now the cpu utilization has shifted to oracle oci driver classes,

          any body has seen this already?? if there are any bugs or etc.., we are using Oracle OCI 11.2.0.1 at the JBoss application server side...

          ajp2orclparsing.jpg

           

          Thanks,
          Jagan.