5 Replies Latest reply on Apr 10, 2009 12:46 PM by peterj

    Jboss 4.2.2 mem issue

    sunlinux

      Hi,

      I have encountered a strange issue using jboss 4.2.2 with jdk1.5_16

      server has 4 GB Ram & we have only one application deployed thr though thr is no so heavy load on server but my free mem size keeps decreasing by time .. it reaches some times 0(free mem) levels..
      below is my run.conf defualt setting

      JAVA_OPTS="-Xms128m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"

      Pls. guide how Do I adjust mem setting for the server(JVM) . or may thr any isue with application itself ..

      at the last application stops responding n I have to reboot it.

        • 1. Re: Jboss 4.2.2 mem issue
          peterj

          What operating system?

          Based on the command line, the heap will never use more than 1/2GB, so the memory usage must be coming from some other place. One possibility is from the threads running - each thread uses memory (typically 1MB, but that all depends on the machine architecture and the OS). What have you done to monitor memory usage of the JVMs process?

          • 2. Re: Jboss 4.2.2 mem issue
            sunlinux

            OS= RHEL AS4

            I do not have specific tool to monitor JVM process but I could take snap from linux command

            Below is statics of mem utilization by java various process .

            PID PPID RSS VSZ %CPU %MEM CMD

            JBOSS Process Output

            29036 29007 346720 937004 0.0 8.3 /data/jdk1.5.0_16/bin/java -Dprogram.name=run.sh -server -Xms128m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.net.preferIPv4Stack=true -Djava.endorsed.dirs=/data/jboss/lib/endorsed -classpath /data/jboss/bin/run.jar:/home/spsadm/data/jdk1.5.0_16/lib/tools.jar org.jboss.Main -b aac


            ALL JAVA Process

            pid, ppid,rss, vsize, pcpu, pmem,cmd -ww --sort=pid | grep java

            8572 1 65420 1288608 0.0 1.5 /opt/egurkha/jre/bin/java -Xrs -Dsun.net.inetaddr.ttl=900 EgMainAgent -manager 202.138.97.16 -port 80 -dir /opt/egurkha -ssl n -highSecurity false
            22726 22641 648 4212 0.0 0.0 grep java

            29036 29007 346720 937004 0.0 8.3 /data/jdk1.5.0_16/bin/java -Dprogram.name=run.sh -server -Xms128m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.net.preferIPv4Stack=true -Djava.endorsed.dirs=/data/jboss/lib/endorsed -classpath /data/jboss/bin/run.jar:/home/spsadm/data/jdk1.5.0_16/lib/tools.jar org.jboss.Main -b abc


            above utilization values are of 5 min avg time values

            & it keeps consuming memory very slowly that it takes many days to eat all available memory


            Pls. suggest

            • 3. Re: Jboss 4.2.2 mem issue
              peterj

              This does not look that unusual for JBoss AS, though it would be interesting to see how many threads it is running.

              The one that has me concerned is the EgMainAgent app - it's VSZ is 1.2GB, so it is using up a larger chunk of the available memory (RAM+Swap) than JBoss AS, even though most of it is currently swapped out.

              What are the thread counts for both processes, and what it the ps result, and thread count 1 hour, 4 hours, 8 hours and 12 hours later?

              By the way, memory usage for a Java process includes:
              a) The heap (-Xms, -Xms)
              b) The threads (-Xss * #-threads)
              c) Various C/C++ data structures used by the JVM
              d) The java executable and all of the *.so it loads
              e) Any memory used by native code
              (Hope I didn't forget anything...)

              Typically, the memory used for d) and e) is shared among all java processes (through it shows up as part of VSZ for each process).

              • 4. Re: Jboss 4.2.2 mem issue
                sunlinux

                "What are the thread counts for both processes, and what it the ps result, and thread count 1 hour, 4 hours, 8 hours and 12 hours later?
                "

                any command to check above info.... ?

                • 5. Re: Jboss 4.2.2 mem issue
                  peterj

                  Use the -f option on ps, the NLWP column indicates the number of threads. See the man pages for more details.