9 Replies Latest reply on Apr 23, 2002 12:44 PM by Raj Saini

    JBoss performance tuning to match WebLogic

    Jay Wright Newbie

      I have written an app (a stateless session bean sending messages to a queue for a message driven bean) running on both JBoss 2.4.4 and WebLogic 6.1.

      In weblogic, I am placing objects on the queue at a rate of less than a millisecond and there are always thirty beans working to processes the messages on the queue.

      In JBoss, it takes 98 milliseconds to put the same object on the queue and two mdb's working at a time (which is all that is needed to keep the queue empty).

      My question is how to tune JBoss to bring this queue time down.

      One thought is that the persistence manager is slowing down the queueing process. I DO NOT need the persistence manager for this queue, in fact I delete the persisted queue before I start up JBoss because it doesn't apply to my application. How can I turn off persistence for this queue?

      Alternatively, is there other logging or queue management that would improve performance?

      Thank you.
      Jay

        • 1. Re: JBoss performance tuning to match WebLogic
          Hiram Chirino Expert

          disable persistence on the QueueSender object via the
          setPersistence method.

          • 2. Re: JBoss performance tuning to match WebLogic
            Jay Wright Newbie


            What JDK is that from? 1.4? I'm using JDK1.3.1 and there is no setPersistence method for the Queue or QueueSender.

            • 3. Re: JBoss performance tuning to match WebLogic
              Hiram Chirino Expert

              opps... try:
              QueueSender.setDeliveryMode(DeliveryMode.NON_PERSISTENT);

              Regards,
              Hiram

              • 4. Re: JBoss performance tuning to match WebLogic
                Jay Wright Newbie


                ahhh. thank you very much!

                • 5. Re: JBoss performance tuning to match WebLogic
                  JC Cunningham Newbie

                  I am curious to know whether you achieved the substantial performance improvement you were hoping for.

                  • 6. Re: JBoss performance tuning to match WebLogic
                    Janus Newbie

                    Hello guys, I am currently evaluating JBoss. JBossMq is a little bit slow or rather the MDB performance is, and consumes a lot of memory when handling about a million messages. I tried the solution above but it only improves the sender side not the receiver. Do you have any idea how to optimize the JBoss server so that it can handle about a million messages without reporting out of memory exceptions. Also, I tried to raise the VM heap memory size. It eliminated the problem but out deployment includes other beans not just MDBs, and i don't want to take the mem away from those beans. any ideas?

                    Also, i read about replacing the jms provider with a better one. I trying that today.

                    Thanks in advance,
                    judgejanus

                    • 7. Re: JBoss performance tuning to match WebLogic
                      Janus Newbie

                      Hello guys, I am currently evaluating JBoss. JBossMq is a little bit slow or rather the MDB performance is, and consumes a lot of memory when handling about a million messages. I tried the solution above but it only improves the sender side not the receiver. Do you have any idea how to optimize the JBoss server so that it can handle about a million messages without reporting our of memory exceptions. Also, I tried to raise the VM heap memory size. It eliminated the problem but out deployment includes other beans not just MDBs, and i don't want to take the mem away from those beans. any ideas?

                      Also, i read about replacing the jms provider with a better one. I am trying that today.

                      Thanks in advance,
                      judgejanus

                      • 8. Re: JBoss performance tuning to match WebLogic
                        Jim Hazen Expert

                        I would give the latest JBoss 3.0beta rev a shot. A bit of work went into the mem problem. I haven't had time to test it, but the idea is that if the queue is running into memory problems due to large size (millions of unconsumed messages in the queue), messages will be written to disk to keep the JVM from running into memory issues. Exactly which messages are persisted or what the memory options are I don't know.

                        • 9. Re: JBoss performance tuning to match WebLogic
                          Raj Saini Newbie

                          I have been testing the JBoss 3.0 RC1. I am using the JBossMQ as my JMS server. My primary need is to get the feed from the stock exchange and update the web server layer or the Database from the message.

                          The message flow is 5-10 messages per second. The size of the message is very small. (around 256 bytes).

                          I am using a no durable topic (I configured from the Jboss-destination-serice.xml samples, are the non durable topics?). I have 10 MDBs subscribing to these topic and one JMS client at JSP/servlets)

                          During my tests I found that the JBoss goes out of memory after few hours. I have change the High memory mark and Max memory mark to restrict the message cache memory. This has solved the problem of Jboss going out of memory, but I founf that there were thousands of messages cached on the disk. which had virtally made the feed very slow.

                          Can some one suggest me please which way I should configure my jbossmq and destination so that the message flow (5-10 message per second) are consumed and so that there will not be any message caching.

                          Looking forward for a kind help.

                          Raj Saini