Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-5332

Allow configure max-threads and core-threads independently. Allow idle thread reusage.

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Major Major
    • 12.0.0.Beta1, 12.0.0.Final
    • None
    • EJB
    • None

      Description of problem:
      It looks like the ejb3 subsystem thread pool configuration is hard coded to create an unbounded thread pool, where it it looks like max-threads = core-threads, and thus the threads will increase up to the max-threads configured and then remain there. The keep-alive setting which appears in many of the docs & default configurations is ineffective since max=core.

      ejb3/src/main/java/org/jboss/as/ejb3/subsystem/EJB3SubsystemRootResourceDefinition.java

      I tried defining a different thread pool in the threads subsystem and tried to reference it from the ejb3 subsystem, however it looks like the ejb3 subsystem only looks for thread pools configured in the ejb3 subsystem.

      Additional desired functionality according to PRODMGT-1401:
      "the desired functionality is to, when a new request arrives
      and there is an idle thread, use that thread instead of creating a new
      thread [up until max-threads]."

        1. JBossThreadPoolExecutor.jpg
          111 kB
          Panagiotis Sotiropoulos
        2. JBossThreadPoolReuseIdleThreadsExecutor.jpg
          159 kB
          Panagiotis Sotiropoulos
        3. ModifiedJBossThreadPoolExecutorStateDiagram.jpg
          309 kB
          Panagiotis Sotiropoulos

              dlloyd@redhat.com David Lloyd
              psotirop@redhat.com Panagiotis Sotiropoulos (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

                Created:
                Updated:
                Resolved: