Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

This document contains the results of testing List App refreshing of 200k records on multiple tenants with R/W split enabled (Poppy release). The goal of testing is to assess the performance of mod-lists with load spread across multiple tenants.

...

Query used in lists - "Item status != Available". List refresh result is about 200K records.

Scenario

Data quantity

List App 3 users refresh

multiple tenants

tenant 1 - 1 user

tenant 2 - 1 user

tenants 3 - 1 user

List App 3 users refresh

single tenant

tenant 1 - 3 users

List App 10 users refresh

multiple tenants

tenant 1 - 3 userusers

tenant 2 - 3 userusers

tenants 3 - 4 userusers

List App 10 users refresh

single tenant

tenant 1 - 10 users

List App 30 users refresh

multiple tenants

tenant 1 - 10 userusers

tenant 2 - 10 userusers

tenants 3 - 10 userusers

Results

Transaction
Single tenant*3 tenants**
Duration, avgReleaseTnenantsNumber of usersR/W splitOther conditions

ListApp refresh

previous test results*

10 min 40 sec

[Orchid]1 tenant10 usersdisabled
8.5 min[Poppy]1 tenant10 usersdisabled
17.7 min[Poppy]1 tenant10 usersdisabledTesting in parallel with DI and CICO
ListApp refresh

current test results**
1.5 min[Poppy]
R/W split enabled
3 tenants3 usersenabled
2.8 min[Poppy]

R/W split enabled

10 users
1 tenant3 usersenabled
2.3 min[Poppy]

R/W split enabled

30 users

ListApp refresh, avg

from 9 min 40 sec to

10 min 40 sec

8.5 min17.7 min1.5 min2.3 minInternal server error
3 tenants10 usersenabled
6.1 min[Poppy]1 tenant10 usersenabled
Server error[Poppy]3 tenants30 usersenabled

* Query used in lists - "Item status == Checked out". List refresh result is 200K records.

...

Code Block
languagesql
delete from list_contents where list_id=$1 and refresh_id=$2

Appendix

Infrastructure

PTF -environment pcp1

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

    NameAPI NameMemory GIBvCPUsmax_connections
    R6G Extra Largedb.r6g.xlarge32 GiB4 vCPUs2731


  • 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

Module
pcp1-pvt
Fri Oct 27 08:26:47 UTC 2023
Task Def. RevisionTask CountMem Hard LimitMem Soft limitCPU unitsXmxMetaspaceSizeMaxMetaspaceSizeR/W split enabled
mod-inventory-storage:27.0.01024096369020483076384512false
mod-users:19.2.0192102489612876888128false
nginx-okapi:2023.06.14821024896128000false
mod-circulation-storage:17.1.01022880259215361814384512false
okapi:5.1.193168414401024922384512false
mod-inventory:20.1.0922880259210241814384512false
mod-circulation:24.0.01022880259215361814384512false
pub-okapi:2023.06.1482102489612876800false
mod-fqm-manager:1.0.052102489612876888128true
mod-lists:1.0.052300026001282048384512false

Methodology