2 Replies Latest reply on Oct 26, 2012 8:20 AM by rick.janda

    Separate thread pools for separate deployments in a single JBoss AS 7 instance?

    rick.janda

      Hi,

       

      I have two applications which belong to the same solution but have quite different performance criterias to match. Both are deployed in a single JBoss instance.

       

      One is a soft realtime application, that must handle a high load of SIP calls with response times below 500ms.

      The other one is a asynchronuous store and forward application.

       

      Right now the second application negativly impacts the first one, if the second one has a lot of load and occupies a lot of threads.

      The response time limit of the first application is frequently exceeded then.

       

      Is there a possibility to configure completely separate thread pools for the two applications in the single JBoss AS instance?

       

      Or is there another way to priorize the first application above the second one?

       

      Kind regards,

      Rick

        • 1. Re: Separate thread pools for separate deployments in a single JBoss AS 7 instance?
          jameslivingston

          If you have an application with response time requirements and one without, I think that deploying them on separate instances is the best idea. Even if you had separate thread pools, there are many other shared resources which mean one could affect the other (heap space, data source connection pools etc).

           

           

          Do the applications respond to requests on the same port; that is http://example.com/app1 and http://example.com/app2? If so, then there isn't going to be an easy configuration way to do it. This is because a thread is needed to start processing the request before it knows which application it is going to.

           

          If they are on separate ports, then you should be able to configure different thread pools for each HTTP/AJP connector.

          • 2. Re: Separate thread pools for separate deployments in a single JBoss AS 7 instance?
            rick.janda

            The http threads are not our problem. Both deployments using EJB Async annotation. If the slower application consumed all threads because of a lot of async calls waiting to being processed, then sometimes no thread is left in the other application in the required time for their async calls.

            I saw that I can define a separate thread pool for async calls but I did not find any means to define separate EJB thread Pools for each deployment.