Skip to end of banner
Go to start of banner

PTF - Performance testing of Consolidating Instances (MCPT)

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 23 Next »

Overview

  • This document contains the results of testing MOBIUS master-script tests on the MCPT environment with different environment configurations.

PERF-942 - Getting issue details... STATUS  

Summary

  • During the Data-Export tests we observe Error "java.lang.OutOfMemoryError: Metaspace", so parameters for data-export module were changed:
    • "memory": 1024 → 2304
    • "memoryReservation": 896 → 2048
    • -XX:MaxMetaspaceSize=128m → 256m
    • -Xmx768m → 1536m
  • After upgrade Data-Export module all Data Export tests finished successfully on qcpt environment using the Default instances, authority, holdings export job profiles and Custom PTF Profiles.
  • No memory leaks, memory consumption was stable during all of the tests.

  • Database CPU usage varied up to a maximum of 26%

Test Runs and Results

This table contains durations for all Workflows. 

WorkflowTest 1
Baseline Env
configuration
Test 2
CPU=0
Test 3
x2gd.xlarge
CPU=0
instances=6
Test 4
x2gd.xlarge
CPU=0
instances=8
Test 5
x2gd.large
CPU=0
instances=10
Test 6
r6g.xlarge
CPU=2
instances=12(14) 
Test 7
r6g.xlarge
CPU=2
instances=14
placement strategy
(one task per host)
Test 8
x2gd.large
CPU=2
instances=14
placement strategy
(one task per host)
Average
(milliseconds)
ErrorsAverage
(milliseconds)
ErrorsAverage
(milliseconds)
ErrorsAverage
(milliseconds)
ErrorsAverage
(milliseconds)
ErrorsAverage
(milliseconds)
ErrorsAverage
(milliseconds)
ErrorsAverage
(milliseconds)
Errors
AIE_TC: Create Invoices7682100%8106100%50468100%15554100%92805100%10191100%9716100%91611100%
AIE_TC: Invoices Approve2818100%3016100%24781100%7720100%51554100%4512100%4210100%51626100%
AIE_TC: Paying Invoices2882100%3164100%32994100%9788100%64642100%5430100%4902100%65029100%
CICO_TC_Check-In Controller20000%22140%190750%60380%329090%36590%31940%308310%
CICO_TC_Check-Out Controller35480%37990%292241%105600%573470%64390%55950%555030%
CSI_TC:Share local instance1305019%1307319%1426516%161920%173612%1378214%1333917%174601%
DE_Exporting MARC Bib records custom workflow847070%590990%38249156%1168690%56738983%1278850%885410%50075971%
DE_Exporting MARC Bib records workflow741260%430930%41798257%976564%62361091%821260%830460%45721258%
EVA_TC: View Account5190%5650%1603419%17360%406192%11381%9721%376691%
ILR_TC: Create ILR14220%14990%116071%38820%236760%24140%19970%223350%
MSF_TC: mod search by auth query7552%6680%18880%15000%61800%10800%9100%58940%
MSF_TC: mod search by boolean query2051%1590%5940%4270%20220%2580%2380%18710%
MSF_TC: mod search by contributors4401%3940%8560%8390%34540%6160%5300%33000%
MSF_TC: mod search by filter query3020%2840%5120%5390%20180%4160%3620%19240%
MSF_TC: mod search by keyword query3100%2800%5210%5370%20130%4160%3610%19120%
MSF_TC: mod search by subject query4480%4060%7970%7780%30760%6200%5190%29170%
MSF_TC: mod search by title query10901%10250%14350%13870%36870%14320%11490%35430%
OPIH_/oai/records53300%54040%93300%76770%68810%33270%69900%83350%
POO_TC: Add Order Lines521420%541930%2821920%792060%4120040%577350%577490%3999170%
POO_TC: Approve Order406560%425230%2117470%564460%2651670%439300%438340%2759350%
POO_TC Create Order307340%316520%1073180%429400%492340%321210%438340%1756430%
RTAC_TC: edge-rtac37350%38280%162950%13870%571950%42050%39500%555950%
SDIC_Single Record Import (Create)1327919%1389419%4502416%173050%790532%1465014%1453117%742011%
SDIU_Single Record Import (Update)184660%194320%218270100%282070%1183990%217360%209650%1157770%
TC: Receiving-an-Order-Line43765100%46104100%218270100%65242100%325230100%49024100%48538100%322267100%
Serials-Receiving-Workflow45694100%47336100%198116100%68545100%302203100%49873100%50028100%295508100%
Unreceiving-a-Piece7823100%7757100%40059100%13335100%64155100%9018100%8717100%60295100%
ULR_TC: Users loan Renewal Transaction28100%30780%226021%78290%383830%46730%40300%361430%

Comparison

This graphs contains durations comparison between tests.

 

 Full results table for Test Set №1



This table contains Data Export durations for Test Set №2

 Full results table for Test Set №2

This table contains Data Export durations for Test Set №3

 Full results table for Test Set №3

This table contains Data Export durations for Test Set №4

 Full results table for Test Set №4

This table contains Data Export durations for Test Set №5

This table contains Data Export durations for Test Set №6

Resource utilization for Test №1

Service CPU Utilization

Here we can see that CPU did not exceed 95% for all of the modules.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Kafka metrics


DB CPU Utilization

DB CPU was 99% average with ERW: Exporting Receiving Information

DB Connections

Max number of DB connections was 5568 in maximum.



Resource utilization for Test №2

Service CPU Utilization

Here we can see that okapi used 13% CPU in spike.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Kafka metrics



DB CPU Utilization

DB CPU was 99% average with ERW: Exporting Receiving Information

DB Connections

Max number of DB connections was 5788.

DB load

                                                                                                                     

Top SQL-queries


Resource utilization for Test №3

Service CPU Utilization

Here we can see that mod-permissions used 20% CPU.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Kafka metrics



DB CPU Utilization

DB CPU was 64% maximum.

DB Connections

Max number of DB connections was 2040.


Resource utilization for Test №4

Service CPU Utilization

Here we can see that okapi used 20% CPU.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Kafka metrics




DB CPU Utilization

DB CPU was 91%.

DB Connections

Max number of DB connections was 4840.

DB load

                                                                                                                    

Top SQL-queries


Resource utilization for Test №5

Service CPU Utilization

Here we can see that okapi used 36% CPU.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Kafka metrics


DB CPU Utilization

DB CPU was 42%.

DB Connections

Max number of DB connections was 3650.

DB load

                                                                                                                    

Top SQL-queries


Resource utilization for Test №6

Service CPU Utilization

Here we can see that okapi used 46% CPU.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Kafka metrics




DB CPU Utilization

DB CPU was 98%.

DB Connections

Max number of DB connections was 5150.

DB load

                                                                                                                     

Top SQL-queries


Resource utilization for Test №7

Service CPU Utilization

Here we can see that okapi used 44% CPU.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Inctanse CPU Utilization

Kafka metrics




DB CPU Utilization

DB CPU was 98%.

DB Connections

Max number of DB connections was 5150.

DB load

                                                                                                                     

Top SQL-queries


Resource utilization for Test №8

Service CPU Utilization

Here we can see that okapi used 38% CPU in average.

Service Memory Utilization

Here we can't see any sign of memory leaks on every module. Memory shows stable trend.


Kafka metrics



DB CPU Utilization

DB CPU was maximum 53%.

DB Connections

Max number of DB connections was 3842.

DB load

                                                                                                                     

Top SQL-queries


Appendix

Infrastructure

PTF - Baseline MCPT environment configuration

  • 11 m6g.2xlarge EC2 instances located in US East (N. Virginia)us-east-1
  • 1 database  instance, writer

    NameMemory GIBvCPUsmax_connections

    db.r6g.xlarge

    32 GiB4 vCPUs2731
  • Number of records in DB:
    •  cs00000001_0042
      • instances - 637243
    •  cs00000001
      • authorities - 55000
    •  cs00000001_0003
      • holdings  - 146704
      • instances - 148713
  • Open Search ptf-test
    • Data nodes
      • Instance type - r6g.2xlarge.search
      • Number of nodes - 4
      • Version: OpenSearch_2_7_R20240502
    • Dedicated master nodes
      • Instance type - r6g.large.search
      • Number of nodes - 3
  • 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


 qcpt modules memory and CPU parameters

Cluster Resources - qcpt-pvt (Fri Jul 26 09:55:21 UTC 2024)


Methodology/Approach

MOBIUS Tests: scenarios were started by JMeter script from load generator. We had 100% error count for AIE_TC: Create Invoices, AIE_TC: Invoices Approve, AIE_TC: Paying Invoices, TC: Receiving-an-Order-Line, Unreceiving-a-Piece and Unreceiving-a-Piece Workflows because data was not regenerated.  

  • Test 1: Baseline MCPT Environment configuration according to tunning environment from previous report task count: 4 for services: mod-permissions, mod-search, mod-patron, mod-inventory, mod-inventory-storage, mod-circulation, mod-circulation-storage, mod-order, mod-order-storage, mod-invoice, mod-invoice-storage, for mod-users and mod-authtoken task count 6. Parameter srs.marcIndexers.delete.interval.seconds=86400 for mod-source-record-storage. Instances count: 14Database r6g.4xlargeAmazon OpenSearch Service  ptf-testr6g.2хlarge.search (4 nodes).
  • Test 2: The Baseline MCPT Environment configuration was applied, and CPU=0 was set for all modules.
  • Test 3: The Baseline MCPT Environment configuration was applied, the instance type was changed to x2gd.xlarge, the number of instances was changed to 6, and CPU=0 was set for all services.
  • Test 4: The Baseline MCPT Environment configuration was applied, the instance type was changed to x2gd.xlarge, the number of instances was changed to 8, and CPU=0 was set for all services.
  • Test 5: The Baseline MCPT Environment configuration was applied, the instance type was changed to x2gd.large, the number of instances was changed to 10, and CPU=0 was set for all services.
  • Test 6: The Baseline MCPT Environment configuration was applied, the instance type was changed to r6g.xlarge, the number of instances was changed to 14 but 12 were used, and CPU=2 was set for all services.
  • Test 7: The Baseline MCPT Environment configuration was applied, the instance type was changed to r6g.xlarge, the number of instances was changed to 14, placement strategy was updated to "one task per host", and CPU=2 was set for all services.
  • Test 8: The Baseline MCPT Environment configuration was applied, the instance type was changed to x2gd.large, the number of instances was changed to 14, placement strategy was updated to "one task per host", and CPU=2 was set for all services.


  • No labels