Performance and Data Connections Issue

cancel
Showing results for 
Search instead for 
Did you mean: 
Sarbjeetsingh31
Member II

Performance and Data Connections Issue

I am trying a simple performance test of Activiti core engine 7.6.0.

I have created a simple process with 2 steps and creating multiple processes (1000 per second) but I am facing a issue Actviti side issue not releasing db connection. Other Api's will wait for Db connection and throw Exception (Unable to acquire JDBC connections) because actviti allocating all the connections.

 

In my testing, I found that the engine cannot scale beyond 50 concurrent threads. At 1-10 threads, it works fine. At 50 threads, I get errors almost half the time, and at larger number of threads, it just gets worse.

I am using Postgres for the DB (connections 1000), and run the test on a Centos 7 machine with 8 cores, 24 GB RAM.

 

  1. Events =  disabled
  2. History = disabled
  3. Async Job Executor config
  4. DB Pool config

spring.datasource.hikari.connectionTimeout: 100000
spring.datasource.hikari.idleTimeout: 600000
spring.datasource.hikari.maxLifetime: 1800000
spring.datasource.hikari.minimumIdle: 500
spring.datasource.hikari.maximumPoolSize: 850

 

activiti.async-executor.corePoolSize: 500
activiti.async-executor.maxPoolSize: 700
activiti.async-executor.keepAliveTime: 5000
activiti.async-executor.queueSize: 700
activiti.async-executor.maxTimerJobsPerAcquisition: 50
activiti.async-executor.maxAsyncJobsDuePerAcquisition: 50

 

spring.activiti.historyLevel: none
spring.activiti.dbHistoryUsed: "false"
spring.activiti.db-history-used: "false"
spring.activiti.history-level: NONE
spring.datasource.testWhileIdle: "true"
spring.datasource.validationQuery: SELECT 1

 

 

 

1 Reply
Sarbjeetsingh31
Member II

Re: Performance and Data Connections Issue

Anyone can update for the same.