Overview
This document contains the results of testing List App refreshing of 200k records with multiple parallel workflows (Check-in/Check-out and Data import) in the Poppy release. The goal of testing is to assess the performance of mod-lists along with other workflows (CICO and DI) and to measure mod-lists's impact on other modules
Ticket:
- PERF-668Getting issue details... STATUS
- PERF-691Getting issue details... STATUS
Summary
- ListApp refreshing duration is about 8.5 min when testing separately from other workflows. With Data Import and Check-in/Check-out scenarios added ListApp duration has +108% increase and reaches 17.7 min. It's above the expected value of 10 minutes.
- Data Import and Check-in/Check-out response times have increase about 10-20% with ListApp scenario added.
- According to the results, maximum CPU utilization for DI + CICO test is about 85%, while with ListApp scenario added CPU reaches 160%.
- RDS CPU utilizatoin is about 95% for DI+CICO test and it doesn't increase with ListApp scenario added.
Test runs
Scenario | Data quantity |
---|---|
List App* + Check-in/Check-out + Data Import Create** | ListApp - 10 users CICO - 20 users DI - 25k |
Check-in/Check-out + Data import** | CICO - 20 users DI - 25k |
List App | ListApp - 10 users |
*200k records list refresh for each user.
**PTF Create 2 job was used for DI scneario
Results
Transaction | Duration | Degradation | ||
---|---|---|---|---|
[Orchid] Testing separately | [Poppy] Testing separately (ListApp and DI+CICO) | [Poppy] Testing in parallel | ||
ListApp refresh, avg | from 9 min 40 sec to 10 min 40 sec | 8.5 min | 17.7 min | +108% |
Check-in, avg | 1.173 sec | 1.290 sec | +9.9% | |
Check-out, avg | 1.648 sec | 1.948 sec | +18.2% | |
DI Create 25k | 18 min | 22 min | +22% |
Grafana results
DI + CICO
ListApp + DI + CICO
Instance CPU Utilization
ListApp
DI + CICO
ListApp + DI + CICO
Service CPU Utilization
According to the results, maximum CPU utilization for DI + CICO test is about 85%, while with ListApp scenario added CPU reaches 160%.
ListApp
DI + CICO
ListApp + DI + CICO
Memory Utilization
No memory leaks were found during the tests.
ListApp
DI + CICO
ListApp + DI + CICO
DB CPU Utilization
RDS CPU utilizatoin is about 95% for DI+CICO test and it doesn't increase with ListApp scenario added.
ListApp
DI + CICO
ListApp + DI + CICO
DB Load
ListApp
DI + CICO
ListApp + DI + CICO
Appendix
Infrastructure
PTF -environment pcp1
- 10 m6i.2xlarge EC2 instances located in US East (N. Virginia)us-east-1
1 database instance, writer
Name API Name Memory GIB vCPUs max_connections R6G Extra Large db.r6g.xlarge 32 GiB 4 vCPUs 2731 - MSK tenant
- 4 m5.2xlarge brokers in 2 zones
Apache Kafka version 2.8.0
EBS storage volume per broker 300 GiB
- auto.create.topics.enable=true
- log.retention.minutes=480
- default.replication.factor=3
Additional info
Grafana graphs:
List App + Check-in/Check-out + Data Import Create
Check-in/Check-out + Data import
Methodology
- Conduct test with ListApp scenario
- Conduct test with ListApp scenario + CICO + DI
- Conduct test withCICO + DI scenarios
- Compare the results