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.
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
Anyone can update for the same.
Ask for and offer help to other Alfresco Process Services and Activiti Users and members of the Alfresco team.
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.