Bulk Edit Users App report [Nolana] 26/10/2022

Bulk Edit Users App report [Nolana] 26/10/2022

 

 

Overview

Bulk Edit - Establish a performance baseline for user status bulk updates. 

  • How long does it take to export 100, 1000, 2500, 10k, and 100K records?

  • Use it for up to 5 concurrent users.  

  • Look for a memory trend and CPU usage

 

Infrastructure

PTF -environment

  • 9 m6i.2xlarge EC2 instances located in US West (Oregon)us-west-2 AWS region (comparing to 10 m6i.2xlarge EC2 instances located in US East (N. Virginia)us-east-1 for Morning Glory release)

  • 2 instances of db.r6.xlarge database instances, one reader, and one writer

  • MSK ptf-kakfka-1

    • 4 m5.2xlarge brokers in 2 zones

    • Apache Kafka version 2.8.0

    • EBS storage volume per broker 300 GiB

    • auto.create.topics.enable=truec

    • log.retention.minutes=480

    • default.replication.factor=3

 

Modules memory and CPU parameters

#

modules

task definition

running tasks 

CPU

memory

memoryReservation

maxMetaspaceSize

Xmx

#

modules

task definition

running tasks 

CPU

memory

memoryReservation

maxMetaspaceSize

Xmx

 

mod-data-export-spring

2

1

256

2048

1844

512

1536 (1236 in MG)

 

mod-data-export-worker

2

2

1024

3072

2600

512

2048 (1536 in MG)

 

mod-users

4

2

128 (258 in MG)

1024

896

128

768

 

mod-notes

2

2

128

1024

896

128m

322 (768m in MG)

 

mod-inventory

2

2

1024

2880

2592

512m

1814m

 

mod-inventory-storage

5

2

1024

2208

1952

512m

1440m

 

okapi

2

3

1024

1684

1440

512m

922m

 

mod-orders

3

2

1024

2048

1440

512m

896m

 

mod-orders-storage

2

2

128

1024

896

128m

768m

 

mod-circulation

3

2

1024

1024

896

128m

768m

 

mod-circulation-storage

6

2

1024

1536

1440

512m

896m

 

mod-agreements

2

2

128

1592

1488

512m

968m

MG- Morning Glory release

Software Versions

  • mod-data-export-worker-1.5.0-SNAPSHOT.76

  • mod-data-export-spring-1.5.0-SNAPSHOT.58

  • mod-agreements-5.4.0-SNAPSHOT.104

  • mod-notes-4.0.0-SNAPSHOT.237

  • mod-users-19.0.0-SNAPSHOT.573

  • mod-inventory-19.0.0-SNAPSHOT.383

  • mod-inventory-storage-25.0.0-SNAPSHOT.631

  • okapi-4.14.4

Summary 

Test report for Bulk Edits users-app functionality 2022-10-26. 

  • 10k records per user, 5 users simultaneously (50k records total) can be uploaded in about 2 min 25 seconds, edited files uploaded in up to 15 seconds, and edited in 4 min 50 seconds (about 7 min 30 total).

  • The files with identifiers should be strictly determined.

  • The memory of all modules during the tests for 2500 records with 5 parallel was stable. During the tests for 5000 (5 parallel) and 10 000 records (5 parallel) jobs, mod-data-export-worker memory increased by 1% at the start of the 10k test and was about 66,5% all the time. All other modules' memory usage was stable.

  • CPU - 2500 records per user for 5 parallel jobs -CPU of mod-users was 199%, for all other modules did not exceed 15%. 5000 or 10k  records per user for 5 parallel jobs -CPU of mod-users was 174%, and for all other modules did not exceed 23%.

  • RDS CPU utilization did not exceed 36% for 5jobs 2500 records and 49% for 5jobs  5k or 10k records.

Results

Test Runs

Users App - updating user status

Record identifier files location - http://carrier-io.int.folio.ebsco.com/artifacts?q=export

5 virtual users

Nolana

Morning Glory

"BARCODE" Records number per 1 user

Time to upload

Time of POST /bulk-edit/${jobId}/upload

Time to edit - commit changes

Total time

Time to upload

Time of POST /bulk-edit/${jobId}/upload

Time to edit - commit changes

Total time

2500 

40sec

6 sec

1 min 23 sec

2 min 9 sec

34-39 sec

up to 10 minutes (depending on the number of records that should not be updated)

1 min 5 sec

1 min 55 sec

5000

1min 12 sec

10 sec

2 min 25 sec

3 min 47 sec

1 min 12 sec

35 sec if all records will be updatedhttps://folio-org.atlassian.net/browse/MODEXPW-255

1min 50 sec

3 min 30 sec

10k

2 min 25 sec

up to 15 sec

4 min 50 sec

7 min 30 sec

2min 15 sec

2 min if all records will be updated

3 min 58 sec

8 min

Memory usage

The memory of all modules during the tests for 2500 records and 5 parallel jobs was stable all the time.

 

During the tests for 5000 (5 parallel) and 10 000 records (5 parallel) jobs, mod-data-export-worker memory increased by 1% at the start of the 10k test and was about 66,5% all the time. All other modules' memory usage was stable.

CPU utilization

      CPU - 2500 records per user for 5 parallel jobs -CPU of mod-users was 199%, for all other modules did not exceed 15%.

 

5000 & 10k  records per user for 5 parallel jobs -CPU of mod-users was 174%, and for all other modules did not exceed 23%.

RDS CPU utilization

2500 records - RDS CPU utilization did not exceed 36%

5000 & 10k records - RDS CPU utilization did not exceed 49%