1 2 3 Previous Next 32 Replies Latest reply on Sep 5, 2009 4:54 PM by peterj Go to original post
      • 15. Re: JBoss Performance Tuning
        pramod_ppp

        Hi Tony,

        I really impressed with all the stats and performace tips provided in this discussion. Could you please let me know about your enviornment. Also did u tried the Regression testing on your application. If yes could you please post your stats.

        Thanks
        Pramod

        • 16. Re: JBoss Performance Tuning
          tdanecito

          Hi Pramod,

          Thanks for the comment. I am on vacation right now but checking this thread.

          For what I can remember without my system in front of me for the server:

          Windows 2000 professional sp4
          Mustang 1.6 b91
          JBoss 4.0.4 GA
          Apache 2.2
          Intel P4 3.0GHz HT Northwood core
          Regular DDR 400
          Two hard drives one for operating system and one for the apps and data

          There are some details I have not mentioned because I would need more time and a separate web site to talk all about it. I have a regular job like the rest of you and this is just a long term fun project I can do but hope to release soon the entire system for everyone to use on the internet.

          The client is experimental design so I am not talking about that till it is released.


          Hope that helps.
          -Tony Anecito
          adanecito@yahoo.com

          • 17. Re: JBoss Performance Tuning
            tdanecito

            Hi All,

            Finally upgraded last night from Intel P4 3Ghz (Northwood core) DDR400 to AMD64 3800+ AM2 DDR2 800 early in morning today (2:00AM).
            Quickly ran test and was getting little over 5msec total transaction response time over internet for single hop short distance was 7-8msec before upgrade. Still on Windows 2000 professional OS but hope to find Vista somewhere and test 64-bit operations then will mention results here.

            Interesting but expected vast improvements in database access (from 6msec to 1 msec improvement). reason I expect is faster memory since improvements were probably from in-memory tables/data.

            Have not upgraded client (windows xp sp2 Centrino Duo DDR2) so expect will probably reach only to 3-4msec transaction time as measured at client. Will make measurements over next day or so to see if reached 1usec or better trnasaction time per thread at app server (JBoss 4.0.4 GA).


            Have fun all!
            -Tony Anecito

            • 18. Re: JBoss Performance Tuning
              tdanecito

              Okay I am down to 2usec for logins and 7-8 usec for most everything else in the servlet layer of TomCat/JBoss in 32-bit mode.

              Looking at AMD64 X2 4600+ AM2 to replace AMD64 3800+ AM2 but probably better off with AMD 62 FX that has 1MB L2 cache instead of the 512KB cache.

              Have fun all.

              • 19. Re: JBoss Performance Tuning
                tdanecito

                Okay, Learned something new last night. My logins are actually below 1 usec because the timer System.nanoTime() in my timer class was taking 1.072 usec.

                I am working on a solution for caching that looks like I might get down to the 40-50 nansecond range for the cache. then hopefully I will be down to less than 100 nanoseconds for transactions. I should be up to around 10-50 million transactions per second.

                Regards,
                -Tony

                • 20. Re: JBoss Performance Tuning
                  tdanecito

                  Good Morning,

                  Over the weekend I was able to come up with a simple light weight cache that got me what I needed that was beyond a HashMap in simplicity yet the performance was in the nanosecond or picosecond range (0-999 picoseconds) I had a problem measuring the execution time since it had a tendancy to drop below a nanosecond using the System.nanoTime().

                  Got to go to my real job.

                  -Tony

                  • 21. Re: JBoss Performance Tuning
                    tdanecito

                    Hi All,

                    I tried some testing regarding the time it takes to start JBoss and I am getting 18 seconds on a AMD64 3800+ AM2 1GB DDR2-800 on Windows 2000 Professional. I am loading a big EAR (9MB) because of inclusion of Web Services jar for JAX-WS.

                    I set up a RAM Drive and put JBoss on it but I saw no startup improvement. I also went through the config files to remove unused services and removed console logging but not sure that improved performance.

                    My guess is that the startup is CPU bound since it used to take 30seconds before I upgraded CPU/Memory.

                    Regards,
                    -Tony

                    • 22. Re: JBoss Performance Tuning
                      tdanecito

                      Final Hardware Upgrade.

                      Upgraded finally from AMD64 3800+ AM2 to AMD64 X2 4200+ AM2. Everything else on the motherboard stayed the same.

                      My JBoss startup time went from 18seconds to 14seconds or 22% improvement.

                      Just further proof that the startup time is CPU bound.

                      Regards,
                      -Tony

                      • 23. Re: JBoss Performance Tuning
                        tdanecito

                        Hi All,

                        Sorry for being away so long. Been busy working on the front end of the web system that uses JBoss for the app server. Was able to release the system today and some information can be found at theserverside.com at:

                        http://www.theserverside.com/discussions/thread.tss?m=c.reply&thread_id=43688#224749

                        I was getting less than 70msec response times across the country using web services with JBoss & JAXWS 2.0. I have upgraded to JBoss 4.0.5GA and JAXWS 2.1 but have not had the opportunity to to try testing across the US yet.

                        Have a Great 2007!
                        -Tony

                        • 24. Re: JBoss Performance Tuning

                          hi tdanecito.
                          i have one problem, i think u could help me :)
                          Environment:
                          1. OS - Sun Solaris SPARC 64-bit.
                          2. Java - JDK 6.0
                          3. Hardaware - Sun Machine (4 CPU, 16 GB Fis. Memory, 31 GB Swap)
                          4. AS - JBoss Application Server 4.0.4 GA.
                          5. Project - EJB 3.0 and JSF Technologies.
                          6. Jboss run.conf file

                          JAVA_OPTS="-server -Xmx7168m -Xms6144m -Xmn2g -Xss256k -d64 -XX:PermSize=128m -XX:MaxPermSize=256m
                           -XX:ParallelGCThreads=20 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
                           -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=31 -XX:+AggressiveOpts
                           -verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+PrintTenuringDistribution -Xloggc:gc.log"
                          


                          i have 4 or 5 jar ejb file and after a 10 or 15 redeploying i get an error

                          Perm. Gen. Space Error.
                          if would be nessasity i will be post full stack trace

                          is there any ban conf ?

                          can u help me ?


                          Regards,
                          Paata

                          • 25. Re: JBoss Performance Tuning
                            tdanecito

                            Hi,

                            It seems like 128m is enough memory for most implementations.

                            Yes supply a stack trace. You could also try jconsole to monitor JBoss and see if it shows how much Perm space is actually used.

                            The other thing you might do is check the bug fixes for 4.0.5GA to see if there is any memory leak issue with the version of JBoss you are using.

                            Regards,
                            -Tony

                            • 26. Re: JBoss Performance Tuning
                              jerrynolan

                              You can also use jmap with the -heap option to check your permgen.
                              It will give you a listing of different areas of the jvm memory footprint, permgen is at the bottom. It's a quick way to take a look.
                              You run it with jmap -heap <jboss jvm pid>
                              For instance:

                              /usr/jdk1.5/bin/jmap -heap 7302
                              ...
                              Perm Generation:
                               capacity = 134217728 (128.0MB)
                               used = 79881104 (76.18055725097656MB)
                               free = 54336624 (51.81944274902344MB)
                               59.51606035232544% used
                              

                              On this box min and max permgen is set to 128M. If you don't have them both set to the same value (aka pre-allocated), jmap will tell you what value was being used when you ran the command - the value will be "capacity".

                              In my case, someone had set the box to 300M for permgen. Checking with jmap -heap over a weeks period made me realize that 128M was enough for this box.



                              • 27. Re: JBoss Performance Tuning
                                obobogo

                                Hi all,

                                I am facing big problems with jboss 3.2.7.
                                we have :
                                2 big Ip
                                3 Hp DL 320 with (1 Go Ram 3.2 Ghz, 1 Cpu) apache web server
                                4 Hp DL 580 with (14 Go Ram 3.2 Ghz, 2 Cpu) Jboss App server
                                4 Hp DL 740 with (18 Go Ram 3.2 Ghz, 4 Cpu) Oracle
                                OS : Linux Redhat
                                JDK 1.4.2_13

                                We have a J2EE application with struts, torque, Ejb, jsp, servlet, ....oracle database. This application is used to cash customer, we are not able to manage approximatively 48000 transaction/hours.

                                After one hour of cashing, we have to reboot the server to free the memory, if you make a top on your linux console you will see that only 2 Go of memory are used. Please can u give me advised to fine tune my server such to improve the quality of service to customer.

                                We have sales point in a 500 000 Km2 and this is creating big commercial issues, i have a support contrat with jboss and we are planing other actions.

                                Before this does some body can advise me one fine tuning or advise me to upgrade AS, WS version if needed.

                                • 28. Re: JBoss Performance Tuning
                                  jerrynolan

                                  I'm sure everyone here would like to see your JVM options to start with...

                                  HOWEVER, since you have a JBoss service contract, please open up a case with them and mark it as a "Production is down".

                                  They should be calling you pretty quickly, and if they don't then you should call them! Needing to limp along and re-boot your servers once an hour is pretty awful.

                                  Jerry

                                  • 29. Re: JBoss Performance Tuning
                                    obobogo

                                    Thanks,

                                    Jerry, i open a open a case and i am waiting for a quick answer from jboss.
                                    I check my log every time that the server crash, i see a NestedSQLException from jboss log. He said that there is not available connexion managed from the pool. When i check my database, there is not any cpu problem, any memory problem, ...All connection are inactive in the database.
                                    I see on forum that this problem occured with jboss since 2003. So waiting that i get a quick answer from jboss, would u have an idea on how to help jboss to manage well the pool connection and reinitialise the inactive connection in the pool such to make it available.