Service Engine - Thread pool

Posted by pratyush Giri on
URL: http://ofbiz.116.s1.nabble.com/Service-Engine-Thread-pool-tp4766430.html

Hi All,

I researched the topic and could not find answers and hence the question. If I was not able to figure out the appropriate search query, my aplogies.

I am trying to increase the thread count for the service engine (min - 20, max: 200). Currently, I am exploring and would like to find the optimum for my use-case (that's on me).

From the documentation, I modified the service engine xml as follows:

<thread-pool send-to-pool="pool"
                     purge-job-days="4"
                     failed-retry-min="3"
                     ttl="120000"
                     jobs="300"
                     min-threads="20"
                     max-threads="200"
                     poll-enabled="true"
                     poll-db-millis="30000">
            <run-from-pool name="pool"/>
        </thread-pool>

However, on my restart of the server, the link thread list shows still as a min. of 2 and a max of 5 threads.

https://localhost:8443/webtools/control/threadList

Keep Alive Time In Seconds 120
Number Of Core Invoker Threads 2
Current Number Of Invoker Threads 2
Number Of Active Invoker Threads 0
Max Number Of Invoker Threads 5
Greatest Number Of Invoker Threads 2
Number Of Completed Tasks 32

Question: Why are the serviceengine.xml settings are not honored? Did I miss something else?

On a side note, with the same settings, i.e. min of 2 and max of 5 threads, when I hit about 100 concurrent requests to create order:  org.apache.ofbiz.order.shoppingcart.CheckOutHelper.createOrder method gets exponentially delayed sometimes talking around 3 minutes to complete and sometimes timing out. That is the reason for my exploration. My system is backed by a Postgres database.

Thank you all in advance.

Best,
Pratyush