On 09/03/2021 19:31, pratyush Giri wrote: > Thank you Nicolas. I appreciate the response. > > When you say the configuration works fine, what do you mean? Do you see 4 > threads getting created ( I think not as you suggested that this > configuration is not for the Ofbiz main thread)?
My service engine return me : Job Queue Service Threads Keep Alive Time In Seconds 120 Number Of Core Invoker Threads 4 Current Number Of Invoker Threads 4 Number Of Active Invoker Threads 0 Max Number Of Invoker Threads 7 Greatest Number Of Invoker Threads 4 Number Of Completed Tasks 99 > Have you tested bombarding > the system with many concurrent order requests? How many concurrent orders > we can create with 1 Ofbiz node ( I am hoping I can scale horizontally by > adding more nodes to the cluster). Currently we create ~2000 order/day with some peak to ~5000 order/day distributed on 2 nodes. The jvm have 4GB allocate and the OFBiz is tuned for the performance (low log, high cache, disable all audit and tracking) > While I agree and am looking at the other things you mentioned, I feel > there may be a way to increase the thread count of the main Ofbiz > application. Is there one? OFBiz manage himself the number of thread needed to response, just ensure that you have enough resource for them (CPU and Memory) > > Are there any production level configurations (best practices) around > threads and memory? Have you check this faq ? https://cwiki.apache.org/confluence/display/OFBIZ/FAQ+-+Tips+-+Tricks+-+Cookbook+-+HowTo#FAQTipsTricksCookbookHowTo-Audit For summarize : Enable your cache, configure your log level, synchronize your entity engine configuration with your database, allow enough resource for your JVM Nicolas > > Best, > Pratyush > > > > On Tue, Mar 9, 2021 at 12:26 AM Nicolas Malin <[email protected]> > wrote: > >> Hello Pratyush, >> >> I have this configuration that works fine >> >> <thread-pool send-to-pool="pool" >> purge-job-days="4" failed-retry-min="30" >> ttl="120000" jobs="100" >> min-threads="4" max-threads="7" >> poll-enabled="true" poll-db-millis="30000"> >> <run-from-pool name="pool"/> </thread-pool> >> >> But not sure that your on the good way to solve your problem. This >> configuration is for the job manager and not increase the threading on your >> server for main OFBiz thread. >> I suggest you to check your jvm values, database activity for improve >> indexes, or analyze secas or eecas not useful for your process to increase >> your velocity >> >> Cheers, >> Nicolas >> >> >> On 08/03/2021 22:18, pratyush Giri wrote: >> >> 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 >> >> >> >> >> >> >> >> >> >>
