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
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>

Reply via email to