PTF - Performance testing of Optimizing Eureka Deployment with average LOC load test
1 Overview
2 Summary
5 Appendix
5.1 Infrastructure
5.2 Responce Times
Overview
In this report, PTF working with Olamide (FSE solution architect), investigated the CPU utilizations of modules by running load tests with LOC’s average load on the central and a member tenant. With this information, the PTF and Olamide set out to see how to most efficiently deploy FOLIO running on Eureka while balancing performance and costs.
Summary
During testing, many different combinations of environment settings were tried, such as CPU for modules and their sidecars, task pace strategy, and experiments were also conducted to reduce the number of EC2 instances in various ways. The report will present the results before tuning, and the results after tuning with the current combination of settings:
8 EC2 Instances (The number of EC2 instances was reduced by decreasing the memory and memoryReservation parameters for sidecars. After these changes, no performance degradation was observed during testing.)
memory: 512 and memoryReservation: 256 for all sidecars
CPU 0 for all modules and sidecars except next ones:
CPU settings for keycloak modules:
CPU settings for keycloak modules:
folio-keycloak-b 2048
mod-consortia-keycloak-b 512
mod-login-keycloak-b 128
mod-roles-keycloak-b 128
mod-users-keycloak-b 128CPU settings for mod-inventory and mod-inventory-storage and sidecars for them 512
Task placement strategy: Spread by Availability Zone, and Spread by InstanceId
Test Runs
Test # | Description | Status |
|---|---|---|
Test 1 | On relc environment , average LOC load test was conducted for 30 minutes with defalt CPU settings and Export All disabled | Completed |
Test 2 | On relc environment , average LOC load test was conducted for 30 minutes with tuned settings and Export All enabled | Completed |
Test 3 | On relc environment , average LOC load test was conducted for 30 minutes with tuned settings and Export All disabled. | Completed |
Test Results
Test №2
Service CPU Utilization
Test №3
Service CPU Utilization
Instance CPU Utilization for Test №2 + Test №3
Comparison table for some tests
Transaction | Befor tuning (ms) | After tuning (ms) |
|---|---|---|
TC_AIE: Invoices Approve cs00000int | 3004 | 2783 |
TC_CL Add info to Mediated request | 2464 | 2207 |
TC_IRO: Delete Item cs00000int_0001 | 1815 | 1680 |
TC_IRO: Edit Item cs00000int_0002 | 2038 | 1767 |
TC_MAE: Open MARC Authority | 201 | 176 |
TC_main_CICO: Scan item - Check In | 742 | 700 |
TC_main_EI: Export 5000 Invoice cs00000int | 54939 | 31699 |
TC_main_MSF: mod search by auth query cs00000int | 4353 | 3795 |
TC_main_SC_TB: Transfer budget | 192 | 178 |
Appendix
Infrastructure
PTF - eureka environment Ramsons (relc)
8 r7g.2xlarge EC2 instances located in US East (N. Virginia)us-east-1
1 database instance, writer
NameMemory GIBvCPUs
db.r7g.4xlarge
32 GiB4 vCPUs
MSK fse-test
4 m5.2xlarge brokers in 2 zones
Apache Kafka version 3.7.x
EBS storage volume per broker 300 GiB
auto.create.topics.enable=true
log.retention.minutes=480
default.replication.factor=2