Skip to content

Latest commit

 

History

History
348 lines (210 loc) · 15.7 KB

File metadata and controls

348 lines (210 loc) · 15.7 KB

Overview for: federation-v1/ramping-vus

This scenario runs 4 subgraphs and a GraphQL gateway with Federation v1 spec, and runs a heavy query. We are running a heavy load of concurrent VUs to measure response time and other stats, during stress. It measure things like memory usage, CPU usage, response times. It also includes a summary of the entire execution, and metrics information about HTTP execution times.

This scenario was trying to reach 2000 concurrent VUs over 600s

Comparison

Comparison

Gateway duration(p95)⬇️ RPS Requests Durations Notes
cosmo 6260ms 169 103221 total, 8 failed avg: 2697ms, p95: 6261ms, max: 19094ms, med: 2199ms ❌ 8 failed requests, 8 non-200 responses, 48 unexpected GraphQL errors, non-compatible response structure (48)
wundergraph 6542ms 161 98418 total, 0 failed avg: 2711ms, p95: 6543ms, max: 23019ms, med: 2193ms
apollo-router 6823ms 165 101191 total, 0 failed avg: 2701ms, p95: 6823ms, max: 20419ms, med: 2216ms
mesh-supergraph-bun 7316ms 183 112103 total, 0 failed avg: 3490ms, p95: 7316ms, max: 16566ms, med: 3155ms
mesh-supergraph 19303ms 98 60713 total, 0 failed avg: 10299ms, p95: 19304ms, max: 27697ms, med: 10248ms
apollo-server 60000ms 71 45297 total, 7636 failed avg: 14171ms, p95: 60001ms, max: 60857ms, med: 4486ms ❌ 7636 failed requests, 7636 non-200 responses, 7636 unexpected GraphQL errors
Summary for: `cosmo`

K6 Output

     ✗ response code was 200
      ↳  99% — ✓ 103213 / ✗ 8
     ✗ no graphql errors
      ↳  99% — ✓ 103173 / ✗ 48
     ✗ valid response structure
      ↳  99% — ✓ 103173 / ✗ 48

     checks.........................: 99.96% ✓ 309559     ✗ 104   
     data_received..................: 9.1 GB 15 MB/s
     data_sent......................: 123 MB 201 kB/s
     http_req_blocked...............: avg=50.17ms  min=1.36µs  med=3.3µs   max=15.34s p(90)=4.96µs p(95)=9.64µs  
     http_req_connecting............: avg=48.31ms  min=0s      med=0s      max=15.34s p(90)=0s     p(95)=0s      
     http_req_duration..............: avg=2.69s    min=7.48ms  med=2.19s   max=19.09s p(90)=5.52s  p(95)=6.26s   
       { expected_response:true }...: avg=2.69s    min=7.48ms  med=2.19s   max=19.09s p(90)=5.52s  p(95)=6.26s   
     http_req_failed................: 0.00%  ✓ 8          ✗ 103213
     http_req_receiving.............: avg=443.78ms min=18.04µs med=68.6µs  max=16.88s p(90)=1.3s   p(95)=3.21s   
     http_req_sending...............: avg=64.31ms  min=8.12µs  med=14.18µs max=11.92s p(90)=121µs  p(95)=192.02ms
     http_req_tls_handshaking.......: avg=0s       min=0s      med=0s      max=0s     p(90)=0s     p(95)=0s      
     http_req_waiting...............: avg=2.18s    min=7.38ms  med=1.77s   max=15.58s p(90)=4.93s  p(95)=5.49s   
     http_reqs......................: 103221 169.211419/s
     iteration_duration.............: avg=5.9s     min=13.92ms med=4.8s    max=46.45s p(90)=12.4s  p(95)=15.43s  
     iterations.....................: 103221 169.211419/s
     vus............................: 7      min=7        max=1997
     vus_max........................: 2000   min=2000     max=2000

Performance Overview

Performance Overview

Subgraphs Overview

Subgraphs Overview

HTTP Overview

HTTP Overview
Summary for: `wundergraph`

K6 Output

     ✓ response code was 200
     ✓ no graphql errors
     ✓ valid response structure

     checks.........................: 100.00% ✓ 295254     ✗ 0     
     data_received..................: 8.6 GB  14 MB/s
     data_sent......................: 117 MB  192 kB/s
     http_req_blocked...............: avg=50.43ms  min=1.31µs  med=3.65µs  max=19.3s  p(90)=5.81µs   p(95)=10.74µs
     http_req_connecting............: avg=47.52ms  min=0s      med=0s      max=15.73s p(90)=0s       p(95)=0s     
     http_req_duration..............: avg=2.71s    min=6.52ms  med=2.19s   max=23.01s p(90)=5.6s     p(95)=6.54s  
       { expected_response:true }...: avg=2.71s    min=6.52ms  med=2.19s   max=23.01s p(90)=5.6s     p(95)=6.54s  
     http_req_failed................: 0.00%   ✓ 0          ✗ 98418 
     http_req_receiving.............: avg=504.64ms min=25.95µs med=78.17µs max=18.27s p(90)=1.56s    p(95)=3.23s  
     http_req_sending...............: avg=83.12ms  min=7.52µs  med=15.68µs max=14.35s p(90)=143.89µs p(95)=264.5ms
     http_req_tls_handshaking.......: avg=0s       min=0s      med=0s      max=0s     p(90)=0s       p(95)=0s     
     http_req_waiting...............: avg=2.12s    min=6.44ms  med=1.64s   max=13.01s p(90)=4.68s    p(95)=5.63s  
     http_reqs......................: 98418   161.339646/s
     iteration_duration.............: avg=6.22s    min=12.41ms med=4.95s   max=42.02s p(90)=13.22s   p(95)=16.03s 
     iterations.....................: 98418   161.339646/s
     vus............................: 7       min=7        max=2000
     vus_max........................: 2000    min=2000     max=2000

Performance Overview

Performance Overview

Subgraphs Overview

Subgraphs Overview

HTTP Overview

HTTP Overview
Summary for: `apollo-router`

K6 Output

     ✓ response code was 200
     ✓ no graphql errors
     ✓ valid response structure

     checks.........................: 100.00% ✓ 303573     ✗ 0     
     data_received..................: 8.9 GB  15 MB/s
     data_sent......................: 120 MB  197 kB/s
     http_req_blocked...............: avg=41.72ms  min=1.44µs  med=4.09µs  max=16.17s p(90)=6.84µs   p(95)=11µs    
     http_req_connecting............: avg=39.66ms  min=0s      med=0s      max=16.17s p(90)=0s       p(95)=0s      
     http_req_duration..............: avg=2.7s     min=9.6ms   med=2.21s   max=20.41s p(90)=5.65s    p(95)=6.82s   
       { expected_response:true }...: avg=2.7s     min=9.6ms   med=2.21s   max=20.41s p(90)=5.65s    p(95)=6.82s   
     http_req_failed................: 0.00%   ✓ 0          ✗ 101191
     http_req_receiving.............: avg=635.34ms min=24.62µs med=90.04µs max=15.98s p(90)=2.37s    p(95)=4.01s   
     http_req_sending...............: avg=72.33ms  min=8.05µs  med=19.01µs max=15.17s p(90)=149.46µs p(95)=204.05ms
     http_req_tls_handshaking.......: avg=0s       min=0s      med=0s      max=0s     p(90)=0s       p(95)=0s      
     http_req_waiting...............: avg=1.99s    min=9.47ms  med=1.65s   max=12.44s p(90)=4.18s    p(95)=5.21s   
     http_reqs......................: 101191  165.726952/s
     iteration_duration.............: avg=6.03s    min=27.58ms med=4.91s   max=39.63s p(90)=12.98s   p(95)=15.73s  
     iterations.....................: 101191  165.726952/s
     vus............................: 104     min=52       max=1998
     vus_max........................: 2000    min=2000     max=2000

Performance Overview

Performance Overview

Subgraphs Overview

Subgraphs Overview

HTTP Overview

HTTP Overview
Summary for: `mesh-supergraph-bun`

K6 Output

     ✓ response code was 200
     ✓ no graphql errors
     ✓ valid response structure

     checks.........................: 100.00% ✓ 336309     ✗ 0     
     data_received..................: 9.8 GB  16 MB/s
     data_sent......................: 133 MB  218 kB/s
     http_req_blocked...............: avg=25.3ms   min=1.43µs  med=3.28µs  max=10.88s p(90)=5.4µs   p(95)=7.82µs
     http_req_connecting............: avg=23.89ms  min=0s      med=0s      max=10.88s p(90)=0s      p(95)=0s    
     http_req_duration..............: avg=3.49s    min=16.54ms med=3.15s   max=16.56s p(90)=6.59s   p(95)=7.31s 
       { expected_response:true }...: avg=3.49s    min=16.54ms med=3.15s   max=16.56s p(90)=6.59s   p(95)=7.31s 
     http_req_failed................: 0.00%   ✓ 0          ✗ 112103
     http_req_receiving.............: avg=365.72ms min=27.57µs med=68.81µs max=12.53s p(90)=1.08s   p(95)=2.52s 
     http_req_sending...............: avg=48.89ms  min=7.8µs   med=14.39µs max=8.6s   p(90)=73.61µs p(95)=45.1ms
     http_req_tls_handshaking.......: avg=0s       min=0s      med=0s      max=0s     p(90)=0s      p(95)=0s    
     http_req_waiting...............: avg=3.07s    min=12.17ms med=2.77s   max=12.52s p(90)=5.95s   p(95)=6.66s 
     http_reqs......................: 112103  183.753573/s
     iteration_duration.............: avg=5.52s    min=28.01ms med=4.59s   max=32.63s p(90)=11.17s  p(95)=13.38s
     iterations.....................: 112103  183.753573/s
     vus............................: 273     min=51       max=1995
     vus_max........................: 2000    min=2000     max=2000

Performance Overview

Performance Overview

Subgraphs Overview

Subgraphs Overview

HTTP Overview

HTTP Overview
Summary for: `mesh-supergraph`

K6 Output

     ✓ response code was 200
     ✓ no graphql errors
     ✓ valid response structure

     checks.........................: 100.00% ✓ 182139    ✗ 0     
     data_received..................: 5.3 GB  8.6 MB/s
     data_sent......................: 72 MB   117 kB/s
     http_req_blocked...............: avg=3.24ms  min=1.89µs  med=4.12µs  max=1.57s  p(90)=6.78µs p(95)=12.38µs 
     http_req_connecting............: avg=3.13ms  min=0s      med=0s      max=1.07s  p(90)=0s     p(95)=0s      
     http_req_duration..............: avg=10.29s  min=54.17ms med=10.24s  max=27.69s p(90)=18.14s p(95)=19.3s   
       { expected_response:true }...: avg=10.29s  min=54.17ms med=10.24s  max=27.69s p(90)=18.14s p(95)=19.3s   
     http_req_failed................: 0.00%   ✓ 0         ✗ 60713 
     http_req_receiving.............: avg=41.94ms min=33.41µs med=77.63µs max=6.74s  p(90)=4.81ms p(95)=129.59ms
     http_req_sending...............: avg=5.62ms  min=9.13µs  med=17.85µs max=2.49s  p(90)=50.4µs p(95)=2.32ms  
     http_req_tls_handshaking.......: avg=0s      min=0s      med=0s      max=0s     p(90)=0s     p(95)=0s      
     http_req_waiting...............: avg=10.25s  min=52.08ms med=10.21s  max=27.65s p(90)=18.09s p(95)=19.23s  
     http_reqs......................: 60713   98.361738/s
     iteration_duration.............: avg=10.49s  min=83.6ms  med=10.45s  max=32.84s p(90)=18.36s p(95)=19.7s   
     iterations.....................: 60713   98.361738/s
     vus............................: 352     min=50      max=1998
     vus_max........................: 2000    min=2000    max=2000

Performance Overview

Performance Overview

Subgraphs Overview

Subgraphs Overview

HTTP Overview

HTTP Overview
Summary for: `apollo-server`

K6 Output

     ✗ response code was 200
      ↳  83% — ✓ 37661 / ✗ 7636
     ✗ no graphql errors
      ↳  83% — ✓ 37661 / ✗ 7636
     ✓ valid response structure

     checks.........................: 88.09% ✓ 112983    ✗ 15272 
     data_received..................: 3.3 GB 5.2 MB/s
     data_sent......................: 54 MB  85 kB/s
     http_req_blocked...............: avg=710.76µs min=1.4µs   med=3.62µs   max=296.99ms p(90)=249.83µs p(95)=806.5µs 
     http_req_connecting............: avg=682.56µs min=0s      med=0s       max=296.82ms p(90)=200.91µs p(95)=711.23µs
     http_req_duration..............: avg=14.17s   min=80.39ms med=4.48s    max=1m0s     p(90)=1m0s     p(95)=1m0s    
       { expected_response:true }...: avg=4.87s    min=80.39ms med=4.34s    max=59.84s   p(90)=5.61s    p(95)=6.29s   
     http_req_failed................: 16.85% ✓ 7636      ✗ 37661 
     http_req_receiving.............: avg=300.67µs min=0s      med=105.34µs max=201.52ms p(90)=178.75µs p(95)=248.22µs
     http_req_sending...............: avg=232.96µs min=7.93µs  med=17.66µs  max=282.15ms p(90)=45.59µs  p(95)=79.86µs 
     http_req_tls_handshaking.......: avg=0s       min=0s      med=0s       max=0s       p(90)=0s       p(95)=0s      
     http_req_waiting...............: avg=14.17s   min=80.25ms med=4.48s    max=1m0s     p(90)=59.99s   p(95)=1m0s    
     http_reqs......................: 45297  71.422162/s
     iteration_duration.............: avg=14.18s   min=86.71ms med=4.5s     max=1m0s     p(90)=1m0s     p(95)=1m0s    
     iterations.....................: 45297  71.422162/s
     vus............................: 34     min=34      max=2000
     vus_max........................: 2000   min=2000    max=2000

Performance Overview

Performance Overview

Subgraphs Overview

Subgraphs Overview

HTTP Overview

HTTP Overview