Configure camunda community for high load


#1

Hello,
I installed camunda community edition on wildfly.
It is working well on POC.
Now I need to make stress testing on camunda to handle real production environment
I must handle up to 10K simultaneous REST requests to the process engine.
I used JMeter to handle this load, but the server crashed after about 2~3 K requests and became non accessible and I had to restart it.
I think some Wildfly tuning should be done, I increased the heap memory to 2 GB but this didn’t solve the problem.
Does anyone has suggestions for more performance tuning hints ?

Thanks


#2

In my opinion you should cut this into two steps.

First tune your WildFly server to handle such a workload at all without using Camunda.
Call REST-Endpoints that do nothing than waiting for some amount of time.
For this, RedHat’s WildFly forum is the right place to ask for help.

If this work very stable, than switch to call the REST endpoints dealing with the Camunda engine.

Which WildFly version you’re using? The best would be to use the latest one (WF 14 or even WF 15, released this week).
For 10k requests in parallel, I strongly suppose that you will need much more than 2 GB.
A typical result of reaching the heap limit is, that the Java Runtime Environment ist busy with finding memory to be freed and cannot handle any new work / new requests.


#3

Hi,

do you really mean 10k concurrent client requests?

If I work with that number, let me assume each node can handle 200 concurrent requests (eg 200 threads in the application server). Let me assume that the TCP stack can queue 50 connections waiting for a worker thread to become free. Hence each node can handle 250 concurrent requests. Thus you would need 40 nodes.

If you mean 10k requests per second, and each request can be processed in 200ms, you may only need 4 nodes…

Hence can you clarify your load requirement?

regards

Rob


#4

There is no problem in heap memory
I opened Java VisualVM to monitor the heap memory, and it doesn’t exceed 1GB, GB is working normally and used memory didn’t reach 2 GB
I think the problem is with Wildfly HTTP listener, how it scales ?