[Nolana] Check-IN + Item-level requests
Overview
The target of the test is to investigate the impact of the Check-In activities with previously created item-level requests and to compare tested results with direct non-functional requirements (see Jira ticket).
- PERF-349Getting issue details... STATUS
Summary
- Test results don't show a substantial negative impact of Check-In activities with previously created item-level requests:
- The average response time of CI was approx. 340 ms and meet NFR (500 ms).
- Expected high memory usage was detected for mod-circulation - 76%
- All modules show expected CPU behaviour and typical workload - 28.4% in a peak
Test Runs
Test # | Test Conditions | Duration | Load generator size (recommended) | Load generator Memory(GiB) (recommended) |
1. | 25 users CI | 30 min | t3.medium | 1 |
Results
Response Times
Check-in | |
---|---|
Average, ms | |
Check-in Controller | |
Test 1 | 340.13 |
Comparisons
Based on - PERF-349Getting issue details... STATUS 's requirement, test results are compared with NFR ("Expected response time: 500ms with 10 item-level holds").
Memory Utilization
CPU Utilization
RDS CPU Utilization
Appendix
Infrastructure
PTF -environment ncp3 [ environment name]
- 9 m6i.2xlarge EC2 instances located in US East (N. Virginia)us-east-1 [Number of ECS instances, instance type, location region]
- 2 instances of db.r6.xlarge database instances: Writer & reader instances
- MSK ptf-kakfa-3 [ kafka configurations]
- 4 kafka.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
Modules memory and CPU parameters:
Modules | Version | Task Definition | Running Tasks | CPU | Memory (Soft/Hard Limits) | MaxMetaspaceSize | Xmx |
---|---|---|---|---|---|---|---|
mod-inventory | 19.0.2 | 7 | 2 | 1024 | 2592/2880 | 512 | 1814 |
mod-inventory-storage | 25.0.3 | 3 | 2 | 1024 | 1952/2208 | 512 | 1440 |
okapi | 4.14.7 | 1 | 3 | 1024 | 1440/1684 | 512 | 922 |
mod-source-record-storage | 5.5.2 | 4 | 2 | 1024 | 1440/1536 | 512 | 908 |
mod-source-record-manager | 3.5.6 | 4 | 2 | 1024 | 3688/4096 | 512 | 2048 |
mod-data-import | 2.6.2 | 4 | 1 | 256 | 1844/2048 | 512 | 1292 |
mod-data-import-cs | 1.15.1 | 1 | 2 | 128 | 896/1024 | 128 | 768 |
mod-quick-marc | 2.5.0 | 3 | 1 | 128 | 2176/2288 | 512 | 1664 |
mod-feesfines | 18.1.1 | 3 | 2 | 128 | 896/1024 | 128 | 768 |
mod-patron-blocks | 1.7.1 | 4 | 2 | 1024 | 896/1024 | 128 | 768 |
mod-pubsub | 2.7.0 | 4 | 2 | 1024 | 1440/1536 | 512 | 922 |
mod-authtoken | 2.12.0 | 3 | 2 | 512 | 1152/1440 | 128 | 922 |
mod-circulation-storage | 15.0.2 | 3 | 2 | 1024 | 1440/1536 | 512 | 896 |
mod-circulation | 23.3.2 | 3 | 2 | 1024 | 896/1024 | 128 | 768 |
mod-configuration | 5.9.0 | 3 | 2 | 128 | 896/1024 | 128 | 768 |
mod-users | 19.0.0 | 4 | 2 | 128 | 896/1024 | 128 | 768 |
mod-remote-storage | 1.7.1 | 3 | 2 | 128 | 1692/1872 | 512 | 1178 |
Methodology/Approach
- Created hundreds of items with 10 item-level requests attached. These items were also checked out.
- Executed check ins with 25 concurrent vUsers using these items for 30 minutes. (On carrier-io used the artifact "circulation_Check-IN_Nolana_ILR.zip")
- Scripts used:
- DB Refresh - checkin-checkout-db-restore.sql
- DB Update - circ-data-load_item-level-requests.sh