5 Replies Latest reply: Feb 14, 2009 12:32 AM by Luis Espinal RSS

Separate Execute Queue in JBOSS

Rajesh Newbie

Hello Jboss team,

I have a jboss version 4.0.3 running with three nodes in cluster and deployed around 30 applications in the server and now i wanted to create a "Separate Execute Queue" for one application as per client request...

Can you suggest me is it possible to create the execute queue for one app in JBOSS , if so could you guide me how to create the same.

Appriciate your quick responce.

Thanks,
-Raj

  • 1. Re: Separate Execute Queue in JBOSS
    Rajesh Newbie

    Hi,

    Can some one answer my query... ?

    Is my query so silly or too tough to answer.


    -Raj

  • 2. Re: Separate Execute Queue in JBOSS
    Weston M. Price Master

    There is no concept of a 'Separate Excecute Queue' in JBoss. All applications (per node) share the same underlying thread pool. These settings can be found in your jboss-service.xml file which resides in the conf directory for your particular node:

    
    <!-- A Thread pool service -->
     <mbean code="org.jboss.util.threadpool.BasicThreadPool"
     name="jboss.system:service=ThreadPool">
     <attribute name="Name">JBoss System Threads</attribute>
     <attribute name="ThreadGroupName">System Threads</attribute>
     <!-- How long a thread will live without any tasks in MS -->
     <attribute name="KeepAliveTime">60000</attribute>
     <!-- The max number of threads in the pool -->
     <attribute name="MaximumPoolSize">10</attribute>
     <!-- The max number of tasks before the queue is full -->
     <attribute name="MaximumQueueSize">1000</attribute>
     <!-- The behavior of the pool when a task is added and the queue is full.
     abort - a RuntimeException is thrown
     run - the calling thread executes the task
     wait - the calling thread blocks until the queue has room
     discard - the task is silently discarded without being run
     discardOldest - check to see if a task is about to complete and enque
     the new task if possible, else run the task in the calling thread
     -->
     <attribute name="BlockingMode">run</attribute>
     </mbean>
    
    


  • 3. Re: Separate Execute Queue in JBOSS
    shiva Newbie

    we are migrating from weblogic to jboss we have execute queue in weblogic . How do i configure in jboss. Should i

    myqueue1
    System Threads
    <!-- How long a thread will live without any tasks in MS -->
    60000
    <!-- The max number of threads in the pool -->
    10
    <!-- The max number of tasks before the queue is full -->
    1000
    <!-- The behavior of the pool when a task is added and the queue is full.
    abort - a RuntimeException is thrown
    run - the calling thread executes the task
    wait - the calling thread blocks until the queue has room
    discard - the task is silently discarded without being run
    discardOldest - check to see if a task is about to complete and enque
    the new task if possible, else run the task in the calling thread
    -->

    run


    myqueue2
    System Threads
    <!-- How long a thread will live without any tasks in MS -->
    60000
    <!-- The max number of threads in the pool -->
    10
    <!-- The max number of tasks before the queue is full -->
    1000
    <!-- The behavior of the pool when a task is added and the queue is full.
    abort - a RuntimeException is thrown
    run - the calling thread executes the task
    wait - the calling thread blocks until the queue has room
    discard - the task is silently discarded without being run
    discardOldest - check to see if a task is about to complete and enque
    the new task if possible, else run the task in the calling thread
    -->

  • 4. Re: Separate Execute Queue in JBOSS
    Daniel En Newbie

    Any news on this topic? JBoss still doesnt support any form og execution queue or any other method to limit the number of simultaneous rmi calls to a jboss server. We need to limit the peek throughput so that we dont DDOS all of our sub systems (db, external systems etc) that has a limit of how many clients calls they may execute at the same time.

    The only solution we have found right now,
    pray that we never have any peaks in rmi trafic and that we can handle the normal application load within limits, is not good enough for production.

    We are migrating a weblogic application to jboss. Weblogic has execution queues that limit how many simultaneous rmi executions that could happen from all connected clients, and make sure that we always are safe within of the throughput limits of the system.

    This is a EJB2 system, using jboss 4.3 eap.
    If no solutions in the ejb2 container, does the new ejb3 container support somthing we could use?

  • 5. Re: Separate Execute Queue in JBOSS
    Luis Espinal Newbie

    Oh my, I'm also coming from a WL point of view, and I have to say I'm extremely surprised JBoss does not support separate execute queues.

    OTH, I'm sure some developers that use JBoss as their AS must surely had encounter a situation where resources had to be prioritized (or contained) differently from the rest.

    How exactly people manage this? If, for reasons of performance or availability you have to segregate your incoming requests into different queues/thread pools/whatever, how do you guys handle that in JBoss? Do you need to have separate JBoss instances for each group?