3 Replies Latest reply: Oct 27, 2012 6:06 AM by Kalyan Pasupuleti-Oracle RSS

    Strange Performance Issue

    Vj Nair-Oracle

      I have been grappling with a strange performance issue. I have two separate war files served via a single ear file. All jar files shared between the two war files, I have put in the APP-INF/lib folder.

      The idea is to have 250 concurrent for application A (served via war file A) and 1400 concurrent for Application B (served via war file B). Now, when I run separately the concurrency tests absolutely no problem

      When I run the concurrency test together for the two applications, the CPU just goes to 99% after around 800 concurrent (250-A and 600-B). Is this because of some classloading issues (Should I try with WEB-INF/lib instead)? Thread-Dump does not throw up anything....

      Any help would be highly appreciated...

        • 1. Re: Strange Performance Issue
          Pierluigi Vernetto
          try activating the flag -verbose:class
          and also, you yourself suggest, try either putting the jars in both WEB-INF/lib, or also in the system classpath to see if it's really a classloader/packaging issue.
          Best thing really is to use a serious profiler (thread dumps is not enough) like yourkit or jrmc
          • 2. Re: Strange Performance Issue
            Must be some thread locking issue as the two wars share the same classloader. Have a look at this
            I think you might need to do some performance optimizations on your code side.
            • 3. Re: Strange Performance Issue
              Kalyan Pasupuleti-Oracle
              Hi Vijay,

              In such a case then you need to try to increase Chunk and Max perm size and Max Heap size to make difference of accessing those request.

              set JAVA_PROPERTIES=%JAVA_PROPERTIES% -Dweblogic.Chunksize=8192 -Dweblogic.utils.io.chunkpoolsize=8192

              increased Maxpermsize to 1024m and Heap size as 3GB.

              Check the results you will see grt difference.