Hi Everyone,

I have setup fineract 1.x (latest master) on a google cloud instance and we
are not getting the expected results when running load tests.

Using docker-compose with a few tweaks:


   - 2 x fineract-server services
   - 3 x mariadb-galera nodes (multi-master)
   - 1 x HAProxy acting as
      - load balancer for fineract api services
      - database proxy

I have setup two load tests in SoapUI:

   1. Generate 1000 clients with savings account and making a deposit of 1
   000 000 in each
   2. Randomly selecting two clients from the first set and doing a
   transfer between their accounts. (only a single call to the api for this
   test)

*The performance on second test is what we are interested in*. We have run
tests with 10, 20 and 100 concurrent threads.
I realize this might be a lot to ask for on a single instance but even when
running only with 1 fineract-server and 1 mariadb-galera node we are *barely
getting more than 10 transactions per second*.
We have checked that the number of connections for both fineract-server and
the db cluster is enough for serving the tests and db connection pools.

Questions:
1) Is it a good idea to try and run a galera cluster (multi-master) with
fineract 1.x? We see a lot of dealocks ( *INSERT INTO
m_account_transfer_details* ) in the logs and was wondering if this is due
to the cluster.
2) Does anyone have recommendations on how to setup an high availability
environment for fineract that is scalable to 100s or maybe 1000s of
transactions per second?
3) Are we expecting too much from the Fineract 1.x architecture?

Regards

Dave

Reply via email to