Hi Dave,

IN GCP my suggestion instead of Galera Cluster is Cloud SQL. For Galera Cluster we have done the setup using bare bones, getting away of  VM/Containers, tuning has been done at hardware, linux and code level.

We have done performance testing with Disbursement batch jobs for 4 millions of accounts without any issue (using Cloud SQL or Galera 6 nodes master-master and load balancer in the front). 

By the way the specs are very limited for having a good performance. 

Regards
El 2 de diciembre de 2019 a las 01:55 AM Dave Martin <[email protected]> escribió:

Cloud instance spec:
8GB mem
2.3 GHz cpu
Debian 9

On Mon, Dec 2, 2019 at 9:48 AM Dave Martin < [email protected]> wrote:

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