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 Version History

« Previous Version 19 Next »

Tested with UCCX 12-5 for ST 13.5

HW specs of the tested VM

  • 2 CPU

  • 4GB RAM

  • 100GB Disk size

Uploading CSV Files (Diff callers volume) in Caller List (Performance Testing):

Caller list

Upload time

Uploaded

Failed

Total in db

File size

Delete through generic clear list (Time)

200k

2 mins

200k

0

200k

4-5 mins

300k

8-9 mins

300k

0

300k

7-8 mins

200k

3 mins

200k

0

200k

8064kb

200k

1 min

99999

100001

99999

5913kb

178845

57 sec

99999

78846

5407kb

100k

53

98784

1216

4677kb

100k

3 mins

100k

0

100k

3994kb

25k

34 sec

25k

25k

64 secs

25k

34 sec

25k

50k

24 sec

50k

0

50k

194817

27 lacs callers db

182 secs (also a delay of callers visibility

594817

25 lacs callers db

708 sec ( some delay in callers visibility in caller list)

300k

324 secs

300k

200k

138 secs

200k

178k

60 secs

99999

78846

Note: there is some delay after uploading the csv on UI, time it took for callers visibility in caller list is around 5 to 8 mins.

image-20240319-065545.png

Load Test:

Software for load test: Apache JMeter

API for Load test

API load testing is done for caller list, Easy Announcement, Business Calendar

  • GET API for Easy announcement is used to get announcement(s) of type “General”. This gives the details of an easy announcement, including id, name and prompts string within the easy announcement.

  • GET API for caller list to check whether a specific caller exist in the list or not. It also returns the prompts associated to a particular caller list

  • GET API for the Service Status for Business calendar checks the status of a calendar, i.e. if the agency is Opened, Closed, has a Holiday or an Exceptional opening or closing. For more detail visit

Load test result is given with the following configuration:

Throughput in sample per unit: 70

Number of threads (users): 1

Ramp up period : 1 sec

Loop count: 100k

Thread Lifetime: 86400 secs (24 hr)

It means the 100k requests will be hit in duration of 24 hrs.

Total callers in db 463948

Load test started for 24 hours for 100k (threads) each for All caller list and caller list easy announcement and business calendar concurrently and detailed load test results can be view in attached file.

four thread groups were running concurrently.

Two scenarios were tested for all caller list a calling number is provided in API where it will checks in all caller list that the calling number exist or not in all caller list where total callers in caller list are 463948. While another scenario API includes only calling number and caller list and that caller list has 100k caller in it. so it checks either calling number exist in the caller list of 100k caller or not. These cases were tested to see the overall performance in both scenarios.

Given is the resulted reports for all caller list, easy announcement and business calendar.

This summarize the test result for All caller List total callers 463948 in All callers.

Sr.no

API

Duration

Threads (users)

Ramp up

(sec)

Number of

sample( total http request hits)

Response Time(sec)

GET API

Benchmark

Result

Min

Max

Avg

Response time for GET API

should not be more than 10 sec

GET

API

24 hr

(86400 sec)

100k

1

60409

0.05 sec

187 sec

0.7

sec

2.74 %

Fail

This summarize the test result for a caller List having 100k caller in caller list

Sr.no

API

Duration

Threads (users)

Ramp up

(sec)

Number of

sample( total http request hits)

Response Time(sec)

GET API

Benchmark

Result

Min

Max

Avg

Response time for GET API

should not be more than 10 sec

GET

API

24 hr

(86400 sec)

100k

1

60393

0.055

sec

187 sec

0.7

sec

2.74 %

Fail

This summarize the test result for Easy Announcement

Sr.no

API

Duration

Threads (users)

Ramp up

(sec)

Number of

sample( total http request hits)

Response Time(sec)

GET API

Benchmark

Result

Min

Max

Avg

Response time for GET API

should not be more than 10 sec

GET

API

24 hr

(86400)

100k

1

100k

0.027

sec

5.9

sec

0.05

sec

0.00 %

Pass

This summarize the test result for Business calendar

Sr.No

API

Duration

Threads (users)

Ramp up

(sec)

Number of

sample( total http request hits)

Response Time(sec)

GET API

Benchmark

Result

Min

Max

Avg

Response time for GET API

should not be more than 10 sec

GET

API

24 hr (86400 sec)

100k

1

100k

0.033 sec

25 sec

0.06 sec

0.002 %

one thing noticeable is in caller API for 100k list the number in that calling list expired due to TTL and the cron job started at 1 am so user can notice the http request failing after 1:00 as the number expired and removed after the TTL job.

ttl.PNG

Following are the load test result for different number of thread(users)

Ramp-up Period (secs)

Number of Threads (Users)

Elapsed time of current running test

Loop Count

1

20

2 sec

Callers are visible

1

1

50

6 sec

Callers are not visible in caller list during load test

1

1

300

29 sec

Callers are not visible in caller list during load test

1

1

500

50 sec

Callers are not visible in caller list during load test

1

5

500

47 sec

Callers are not visible in caller list during load test

1

60

500

1 min 12 sec

Callers are visible in caller list during load test with delay of 5 to 6 secs

1

100

500

1 min 39 sec

callers are visible during load test

1

1

1000

1 min 35 sec

Callers are not visible in caller list during load test

1

1

2000

02 min 39 sec

Callers are not visible in caller list during load test

1

1

100k

1hour 52 mins

Callers and caller list are not visible after the load test. Container of caller list goes into unhealthy state.

1

Later tested Again with different calling number Results are given

image-20240318-101141.png

image-20240318-102116.png

image-20240318-102353.png

image-20240318-102648.png

  • No labels