Versions Compared

Key

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

With the new requirements in Discussion APIs; we have introduced an attribute "child_count" in all Response/Comment endpoints. The platform APIs call forum APIs; hence a corresponding change is made in Forum application too. We have opted to cache comment's child_count as part of DB object. In order to keep child_count field value in sync with the actual number of comment children, we have re-evaluated its value on comment get, create and delete end points; however, comment list endpoint returns cached value to keep good performance stats (except for any existing data for which we re-evaluate child_count and cache it then).

We have gathered and compared two sets of load test results. The former results (i.e. With Child Comment Count) are run on the latest changes and the later are run when we had no "child_count" in question.

New Relic Dashboard: https://rpm.newrelic.com/accounts/88178/custom_dashboards/pages/9377

 

= 576                              N/A; server reached max capacity

New Results (with child comment count)

Old Results (without child comment count)

With Child Comment Count

Without Child Comment Count

No. of clients = 48
req/s = 3.80
Methodsmedian response time95%99%

DELETE_comment

270

4102500

DELETE_thread

190

240260

GET_comment_list

160270340

GET_thread

230370470

GET_thread_list

440740840

PATCH_comment

3104502500

PATCH_thread

210350420

POST_comment_comment

4205802800

POST_comment_response

3605302800

POST_thread

260390440

auto_auth

210230230
No. of clients = 48
req/s = 3.70
Methodsmedian response time95%99%

DELETE_comment

 270 1600 1700

DELETE_thread

 190 280 330

GET_comment_list

 160 260 300

GET_thread

 230 300 420

GET_thread_list

 400 690 770

PATCH_comment

 350 860 1900

PATCH_thread

 210 310 440

POST_comment_comment

 400 540 1800

POST_comment_response

 370 580 1900

POST_thread

 260 390 430

auto_auth

 200 200 200


No. of clients = 68
req/s = 5.30
Methodsmedian response time95%99%
DELETE_comment

270

30003200
DELETE_thread180240260
GET_comment_list160270320
GET_thread230300370
GET_thread_list450760820
PATCH_comment3004703200
PATCH_thread200330420
POST_comment_comment4105303400
POST_comment_response3605303400
POST_thread260400460
auto_auth210210210


No. of clients = 68
req/s = 5.60
Methodsmedian response time95%99%
DELETE_comment 270 1700 1800
DELETE_thread 190 240 260
GET_comment_list 160 260 350
GET_thread 230 300 390
GET_thread_list 400 710 780
PATCH_comment 310 510 1800
PATCH_thread 210 300 440
POST_comment_comment 410 1800 1900
POST_comment_response 370 530 1900
POST_thread 260 390 440
auto_auth 280 310 310


No. of clients = 96
req/s = 7.70
Methodsmedian response time95%99%

DELETE_comment

2809702800

DELETE_thread

190240370

GET_comment_list

160270350

GET_thread

230310390

GET_thread_list

450760830

PATCH_comment

33015002900

PATCH_thread

210330450

POST_comment_comment

4205703000

POST_comment_response

3706002900

POST_thread

260360450

auto_auth

210210210


No. of clients = 96
req/s = 7.30
Methodsmedian response time95%99%

DELETE_comment

 270 360 1800

DELETE_thread

 190 240 300

GET_comment_list

 160 260 360

GET_thread

 240 300 400

GET_thread_list

 410 720 790

PATCH_comment

 310 440 1800

PATCH_thread

 210 300 420

POST_comment_comment

 410 480 1900

POST_comment_response

 370 510 1900

POST_thread

 260 330 420

auto_auth

 210 220 220


No. of clients = 144
req/s = 10.90
Methodsmedian response time95%99%

DELETE_comment

28031003300

DELETE_thread

190250570

GET_comment_list

160290370

GET_thread

240340450

GET_thread_list

490820940

PATCH_comment

3205503300

PATCH_thread

210310420

POST_comment_comment

4207803700

POST_comment_response

3705803500

POST_thread

260380460

auto_auth

130014001400


No. of clients = 144
req/s = 11.20
Methodsmedian response time95%99%

DELETE_comment

 280 1600 2100

DELETE_thread

 190 260 340

GET_comment_list

 160 270 360

GET_thread

 240 330 460

GET_thread_list

 420 740 810

PATCH_comment

 330 1800 2100

PATCH_thread

 210 330 450

POST_comment_comment

 420 710 2200

POST_comment_response

 380 1200 2100

POST_thread

 260 410 450

auto_auth

 210 220 220


No. of clients = 192
req/s = 14.40
Methodsmedian response time95%99%

DELETE_comment

2904103600

DELETE_thread

200260340

GET_comment_list

170290390

GET_thread

250370490

GET_thread_list

5008401000

PATCH_comment

3305103100

PATCH_thread

220350440

POST_comment_comment

43029003700

POST_comment_response

3806203500

POST_thread

270370440

auto_auth

260260260


No. of clients = 192
req/s = 16.60
Methodsmedian response time95%99%

DELETE_comment

 280 590 2200

DELETE_thread

 190 260 320

GET_comment_list

 170 280 370

GET_thread

 250 360 500

GET_thread_list

 440 760 850

PATCH_comment

 320 530 2300

PATCH_thread

 210 310 450

POST_comment_comment

 430 680 2500

POST_comment_response

 380 560 2300

POST_thread

 270 400 450

auto_auth

 190 230 230


No. of clients = 240
req/s = 17.90
Methodsmedian response time95%99%

DELETE_comment

2905604300

DELETE_thread

190300530

GET_comment_list

170350510

GET_thread

260450710

GET_thread_list

63012001800

PATCH_comment

3407003700

PATCH_thread

220350470

POST_comment_comment

45016004400

POST_comment_response

3906804500

POST_thread

270400490

auto_auth

230230230


No. of clients = 240
req/s = 19.50
Methodsmedian response time95%99%

DELETE_comment

 300 2100 2800

DELETE_thread

 200 280 340

GET_comment_list

 170 300 410

GET_thread

 260 420 590

GET_thread_list

 480 810 970

PATCH_comment

 340 710 2600

PATCH_thread

 220 340 500

POST_comment_comment

 450 2200 2700

POST_comment_response

 390 820 2700

POST_thread

 270 410 490

auto_auth

 200 220 220


No. of clients = 288
req/s = 22.80
Methodsmedian response time95%99%

DELETE_comment

3108103700

DELETE_thread

200290450

GET_comment_list

180340450

GET_thread

280470640

GET_thread_list

66012001500

PATCH_comment

3506303800

PATCH_thread

220340450

POST_comment_comment

4608503900

POST_comment_response

4006503900

POST_thread

270410490

auto_auth

220250250


No. of clients = 288
req/s = 22.40
Methodsmedian response time95%99%

DELETE_comment

 300 2100 2800

DELETE_thread

 200 280 520

GET_comment_list

 180 320 450

GET_thread

 270 450 640

GET_thread_list

 530 910 1200

PATCH_comment

 350 540 2500

PATCH_thread

 230 350 460

POST_comment_comment

 460 2200 2800

POST_comment_response

 410 670 2800

POST_thread

 280 420 480

auto_auth

 200 220 220


No. of clients = 336
req/s = 27.70
Methodsmedian response time95%99%

DELETE_comment

32028004800

DELETE_thread

210300490

GET_comment_list

190410600

GET_thread

300590880

GET_thread_list

86021003700

PATCH_comment

3609004600

PATCH_thread

240390490

POST_comment_comment

4908504500

OST_comment_response

4209304700

POST_thread

280430590

auto_auth

250280280
N/A; server reached max capacity


No. of clients
= 384
 = 336
req/s = 26.30
POST
Methodsmedian response time95%99%

DELETE_comment

6000310130002300150003400

DELETE_thread

46002101000029014000420

GET_comment_list

3200190870036011000510

GET_thread

3400290880055012000810

GET_thread_list

7100600120001100140001400

PATCH_comment

4300360110001100150003200

PATCH_thread

37002401000040013000560

POST_comment_comment

5600470130001500190004000

OST_comment_response

540042012000750150003800

POST_thread

3400280880042012000510

auto_auth

260021035002403500
N/A; server reached max capacity
240


No. of clients
= 432
 = 384
req/s = 16.30 (reached server capacity)
Methodsmedian response time95%99%

DELETE_comment

 6000 13000 15000

DELETE_thread

 4600 10000 14000

GET_comment_list

 3200 8700 11000

GET_thread

 3400 8800 12000

GET_thread_list

 7100 12000 14000

PATCH_comment

 4300 11000 15000

PATCH_thread

 3700 10000 13000

POST_comment_comment

 5600 13000 19000

POST_comment_response

 5400 12000 15000

POST_thread

 3400 8800 12000

auto_auth

 2600 3500 
N/A; server reached max capacity
3500


No. of clients
= 480
 = 384
req/s = 31.70
Methodsmedian response time95%99%
DELETE_comment 340 1100 4500
DELETE_thread 210 350 680
GET_comment_list 200 430 670
GET_thread 330 740 1100
GET_thread_list 770 1800 2700
PATCH_comment 380 860 4200
PATCH_thread 250 400 570
POST_comment_comment 500 1300 4600
POST_comment_response 440 910 4100
POST_thread 290 450 640
auto_auth 210  
N/A; server reached max capacity
230230


No. of clients
= 528
 = 480
req/s = 5.00 (reached server capacity)
Methodsmedian response time95%99%

DELETE_comment

 12000 26000 40000

DELETE_thread

 10000 26000 42000

GET_comment_list

 8400 22000 30000

GET_thread

 9400 23000 33000

GET_thread_list

 12000 23000 30000

PATCH_comment

 11000 25000 32000

PATCH_thread

 10000 23000 30000

POST_comment_comment

 12000 24000 30000

POST_comment_response

 11000 25000 32000

POST_thread

 9000 21000 30000

auto_auth

 4400 8100 
N/A; server reached max capacity
8200


No. of clients
 = 480
req/s = 20.40 (reached server capacity)
Methodsmedian response time95%99%
DELETE_comment
5900
12000
15000
DELETE_thread
5400
10000
13000
GET_comment_list
4600
9700
12000
GET_thread
5000
9900
14000
GET_thread_list
8600
13000
15000
PATCH_comment
5800
12000
14000
PATCH_thread
5100
10000
13000
POST_comment_comment
6200
12000
15000
POST_comment_response
5700
11000
14000
POST_thread
4700
9300
12000
auto_auth
   
330054005500


Detailed Results:

With Child Count:

View file
namewith-child_count.rtf
height250

Without Child Count:

View file
namewithout-child_count.rtf
height250