-
Notifications
You must be signed in to change notification settings - Fork 9
Update ghcr.io/apollographql/router Docker tag to v2.6.0 - autoclosed #759
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Overview for:
|
Gateway | RPS ⬇️ | Requests | Duration | Notes |
---|---|---|---|---|
cosmo | 181 | 5598 total, 0 failed | avg: 864ms, p95: 2382ms | ✅ |
grafbase | 165 | 5086 total, 0 failed | avg: 885ms, p95: 2470ms | ✅ |
apollo-router | 156 | 4857 total, 0 failed | avg: 977ms, p95: 2507ms | ✅ |
hive-gateway | 96 | 3157 total, 0 failed | avg: 2918ms, p95: 12713ms | ✅ |
hive-gateway-bun | 90 | 2976 total, 0 failed | avg: 3055ms, p95: 5022ms | ✅ |
apollo-server | 87 | 2906 total, 0 failed | avg: 3220ms, p95: 26693ms | ✅ |
mercurius | 78 | 2527 total, 0 failed | avg: 3641ms, p95: 5168ms | ✅ |
Summary for: `cosmo`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 16734 ✗ 0
data_received..................: 491 MB 16 MB/s
data_sent......................: 6.6 MB 215 kB/s
http_req_blocked...............: avg=1.77ms min=1.54µs med=3.12µs max=1.73s p(90)=5.27µs p(95)=901.63µs
http_req_connecting............: avg=1.44ms min=0s med=0s max=1.73s p(90)=0s p(95)=444.58µs
http_req_duration..............: avg=864.41ms min=3.52ms med=667.95ms max=5s p(90)=1.92s p(95)=2.38s
{ expected_response:true }...: avg=864.41ms min=3.52ms med=667.95ms max=5s p(90)=1.92s p(95)=2.38s
http_req_failed................: 0.00% ✓ 0 ✗ 5598
http_req_receiving.............: avg=326.09ms min=33.39µs med=85.24µs max=4.11s p(90)=1.5s p(95)=1.87s
http_req_sending...............: avg=15.56ms min=7.24µs med=14.53µs max=2.48s p(90)=140.76µs p(95)=3.95ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=522.75ms min=3.46ms med=511.25ms max=2.35s p(90)=902.99ms p(95)=1.06s
http_reqs......................: 5598 181.394723/s
iteration_duration.............: avg=1.6s min=18.58ms med=1.31s max=9.21s p(90)=3.38s p(95)=4.17s
iterations.....................: 5578 180.746653/s
vus............................: 300 min=300 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `grafbase`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 15198 ✗ 0
data_received..................: 447 MB 15 MB/s
data_sent......................: 6.0 MB 196 kB/s
http_req_blocked...............: avg=2.05ms min=1.75µs med=4.21µs max=2.56s p(90)=6.84µs p(95)=435.58µs
http_req_connecting............: avg=1.59ms min=0s med=0s max=2.56s p(90)=0s p(95)=253.22µs
http_req_duration..............: avg=884.79ms min=3.21ms med=655.89ms max=7.27s p(90)=2.03s p(95)=2.46s
{ expected_response:true }...: avg=884.79ms min=3.21ms med=655.89ms max=7.27s p(90)=2.03s p(95)=2.46s
http_req_failed................: 0.00% ✓ 0 ✗ 5086
http_req_receiving.............: avg=350.8ms min=33.76µs med=103.38µs max=5.7s p(90)=1.44s p(95)=1.86s
http_req_sending...............: avg=16.12ms min=8.53µs med=21.31µs max=4.39s p(90)=164.65µs p(95)=1.58ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=517.86ms min=3.14ms med=464.83ms max=2.71s p(90)=1s p(95)=1.22s
http_reqs......................: 5086 165.200411/s
iteration_duration.............: avg=1.77s min=24.96ms med=1.46s max=9.66s p(90)=3.79s p(95)=4.67s
iterations.....................: 5066 164.550783/s
vus............................: 300 min=300 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `apollo-router`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 14511 ✗ 0
data_received..................: 426 MB 14 MB/s
data_sent......................: 5.8 MB 186 kB/s
http_req_blocked...............: avg=1.81ms min=1.44µs med=3.64µs max=1.27s p(90)=6.65µs p(95)=2.42ms
http_req_connecting............: avg=1.79ms min=0s med=0s max=1.27s p(90)=0s p(95)=2.05ms
http_req_duration..............: avg=977.23ms min=6.81ms med=791.57ms max=5.2s p(90)=1.93s p(95)=2.5s
{ expected_response:true }...: avg=977.23ms min=6.81ms med=791.57ms max=5.2s p(90)=1.93s p(95)=2.5s
http_req_failed................: 0.00% ✓ 0 ✗ 4857
http_req_receiving.............: avg=308.41ms min=35.66µs med=91.61µs max=3.66s p(90)=1.29s p(95)=1.73s
http_req_sending...............: avg=21.23ms min=8.01µs med=17.8µs max=2.95s p(90)=321.33µs p(95)=11.51ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=647.58ms min=6.74ms med=605.96ms max=2.23s p(90)=1.16s p(95)=1.46s
http_reqs......................: 4857 156.577678/s
iteration_duration.............: avg=1.88s min=31.68ms med=1.62s max=8.61s p(90)=3.87s p(95)=4.54s
iterations.....................: 4837 155.932928/s
vus............................: 31 min=31 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `hive-gateway`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 9411 ✗ 0
data_received..................: 277 MB 8.5 MB/s
data_sent......................: 3.7 MB 115 kB/s
http_req_blocked...............: avg=1.23ms min=1.89µs med=3.9µs max=36.94ms p(90)=32.68µs p(95)=11.84ms
http_req_connecting............: avg=1.19ms min=0s med=0s max=26.38ms p(90)=0s p(95)=11.77ms
http_req_duration..............: avg=2.91s min=12.94ms med=1.61s max=32.28s p(90)=2.83s p(95)=12.71s
{ expected_response:true }...: avg=2.91s min=12.94ms med=1.61s max=32.28s p(90)=2.83s p(95)=12.71s
http_req_failed................: 0.00% ✓ 0 ✗ 3157
http_req_receiving.............: avg=2.88ms min=43.12µs med=92.12µs max=479.85ms p(90)=631.18µs p(95)=3.26ms
http_req_sending...............: avg=520.15µs min=9.2µs med=21.18µs max=226.12ms p(90)=241.77µs p(95)=902.96µs
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=2.91s min=12.83ms med=1.6s max=32.28s p(90)=2.83s p(95)=12.71s
http_reqs......................: 3157 96.498974/s
iteration_duration.............: avg=2.98s min=136ms med=1.64s max=32.29s p(90)=2.87s p(95)=13.09s
iterations.....................: 3137 95.88764/s
vus............................: 94 min=94 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `hive-gateway-bun`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 8868 ✗ 0
data_received..................: 261 MB 8.0 MB/s
data_sent......................: 3.5 MB 108 kB/s
http_req_blocked...............: avg=660.87µs min=1.72µs med=3.67µs max=33.85ms p(90)=195.84µs p(95)=6.35ms
http_req_connecting............: avg=632.69µs min=0s med=0s max=22.75ms p(90)=76.23µs p(95)=6.17ms
http_req_duration..............: avg=3.05s min=14.88ms med=2.75s max=7.64s p(90)=4.54s p(95)=5.02s
{ expected_response:true }...: avg=3.05s min=14.88ms med=2.75s max=7.64s p(90)=4.54s p(95)=5.02s
http_req_failed................: 0.00% ✓ 0 ✗ 2976
http_req_receiving.............: avg=79.58ms min=37.1µs med=128.33µs max=1.85s p(90)=160.53ms p(95)=747.34ms
http_req_sending...............: avg=1.53ms min=8.42µs med=19.06µs max=1.04s p(90)=314.34µs p(95)=2.92ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=2.97s min=14.77ms med=2.67s max=7.64s p(90)=4.49s p(95)=4.96s
http_reqs......................: 2976 90.99836/s
iteration_duration.............: avg=3.16s min=192.03ms med=2.88s max=8.13s p(90)=4.68s p(95)=5.1s
iterations.....................: 2956 90.386812/s
vus............................: 108 min=108 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `apollo-server`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 8658 ✗ 0
data_received..................: 255 MB 7.7 MB/s
data_sent......................: 3.4 MB 104 kB/s
http_req_blocked...............: avg=618.85µs min=1.68µs med=4µs max=13.87ms p(90)=160.66µs p(95)=6.29ms
http_req_connecting............: avg=582.13µs min=0s med=0s max=13.27ms p(90)=117.81µs p(95)=5.96ms
http_req_duration..............: avg=3.22s min=10.92ms med=1.34s max=32.69s p(90)=2.14s p(95)=26.69s
{ expected_response:true }...: avg=3.22s min=10.92ms med=1.34s max=32.69s p(90)=2.14s p(95)=26.69s
http_req_failed................: 0.00% ✓ 0 ✗ 2906
http_req_receiving.............: avg=300.02µs min=44.87µs med=107.86µs max=299.86ms p(90)=217.3µs p(95)=339.53µs
http_req_sending...............: avg=188.09µs min=9.41µs med=21.9µs max=16.88ms p(90)=139.23µs p(95)=1.12ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=3.21s min=10.82ms med=1.34s max=32.69s p(90)=2.14s p(95)=26.69s
http_reqs......................: 2906 87.758326/s
iteration_duration.............: avg=3.25s min=206.36ms med=1.35s max=32.71s p(90)=2.15s p(95)=26.83s
iterations.....................: 2886 87.154346/s
vus............................: 15 min=15 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `mercurius`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 7521 ✗ 0
data_received..................: 222 MB 6.9 MB/s
data_sent......................: 3.0 MB 94 kB/s
http_req_blocked...............: avg=1.44ms min=1.74µs med=3.66µs max=33.79ms p(90)=3.46ms p(95)=14.44ms
http_req_connecting............: avg=1.4ms min=0s med=0s max=27.08ms p(90)=2.77ms p(95)=14.22ms
http_req_duration..............: avg=3.64s min=11.43ms med=3.7s max=7.65s p(90)=4.31s p(95)=5.16s
{ expected_response:true }...: avg=3.64s min=11.43ms med=3.7s max=7.65s p(90)=4.31s p(95)=5.16s
http_req_failed................: 0.00% ✓ 0 ✗ 2527
http_req_receiving.............: avg=17.42ms min=41.85µs med=101.58µs max=723.98ms p(90)=368.62µs p(95)=5.15ms
http_req_sending...............: avg=237.47µs min=9.84µs med=19.51µs max=13.52ms p(90)=282.95µs p(95)=754.08µs
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=3.62s min=11.16ms med=3.7s max=7.65s p(90)=4.31s p(95)=5.16s
http_reqs......................: 2527 78.836372/s
iteration_duration.............: avg=3.7s min=437.69ms med=3.73s max=7.66s p(90)=4.34s p(95)=5.21s
iterations.....................: 2507 78.212419/s
vus............................: 33 min=33 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Overview for:
|
Gateway | RPS ⬇️ | Requests | Duration | Notes |
---|---|---|---|---|
cosmo | 174 | 5413 total, 0 failed | avg: 822ms, p95: 1869ms | ✅ |
grafbase | 168 | 5219 total, 0 failed | avg: 870ms, p95: 2235ms | ✅ |
apollo-router | 160 | 4946 total, 0 failed | avg: 885ms, p95: 2238ms | ✅ |
hive-gateway | 92 | 3057 total, 0 failed | avg: 3041ms, p95: 13595ms | ✅ |
hive-gateway-bun | 91 | 3025 total, 0 failed | avg: 3050ms, p95: 4935ms | ✅ |
apollo-server | 89 | 2957 total, 0 failed | avg: 3159ms, p95: 19635ms | ✅ |
mercurius | 77 | 2471 total, 0 failed | avg: 3716ms, p95: 5665ms | ✅ |
Summary for: `cosmo`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 16179 ✗ 0
data_received..................: 475 MB 15 MB/s
data_sent......................: 6.4 MB 208 kB/s
http_req_blocked...............: avg=1.82ms min=1.72µs med=3.77µs max=1.13s p(90)=6.81µs p(95)=227.04µs
http_req_connecting............: avg=1.38ms min=0s med=0s max=1.13s p(90)=0s p(95)=134.08µs
http_req_duration..............: avg=822.32ms min=3.31ms med=741.66ms max=3.98s p(90)=1.54s p(95)=1.86s
{ expected_response:true }...: avg=822.32ms min=3.31ms med=741.66ms max=3.98s p(90)=1.54s p(95)=1.86s
http_req_failed................: 0.00% ✓ 0 ✗ 5413
http_req_receiving.............: avg=171.61ms min=35.24µs med=91.95µs max=3.36s p(90)=717.73ms p(95)=1.16s
http_req_sending...............: avg=23.71ms min=7.72µs med=18.42µs max=2.21s p(90)=134.98µs p(95)=1.86ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=626.99ms min=3.19ms med=631.97ms max=2.9s p(90)=1.05s p(95)=1.21s
http_reqs......................: 5413 174.968989/s
iteration_duration.............: avg=1.66s min=31.22ms med=1.46s max=7.48s p(90)=3.21s p(95)=3.79s
iterations.....................: 5393 174.322512/s
vus............................: 300 min=300 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `grafbase`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 15597 ✗ 0
data_received..................: 459 MB 15 MB/s
data_sent......................: 6.2 MB 200 kB/s
http_req_blocked...............: avg=5.39ms min=1.54µs med=3.63µs max=2.53s p(90)=6.08µs p(95)=21.17ms
http_req_connecting............: avg=4.23ms min=0s med=0s max=1.52s p(90)=0s p(95)=18.6ms
http_req_duration..............: avg=869.74ms min=3.51ms med=727.61ms max=4.77s p(90)=1.86s p(95)=2.23s
{ expected_response:true }...: avg=869.74ms min=3.51ms med=727.61ms max=4.77s p(90)=1.86s p(95)=2.23s
http_req_failed................: 0.00% ✓ 0 ✗ 5219
http_req_receiving.............: avg=263.48ms min=33.68µs med=86.77µs max=4.43s p(90)=1.07s p(95)=1.63s
http_req_sending...............: avg=21.31ms min=8.45µs med=17.17µs max=3.42s p(90)=6.21ms p(95)=43.26ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=584.94ms min=3.39ms med=580.88ms max=2.74s p(90)=1.04s p(95)=1.31s
http_reqs......................: 5219 168.549527/s
iteration_duration.............: avg=1.75s min=24.28ms med=1.52s max=8.39s p(90)=3.51s p(95)=4.26s
iterations.....................: 5199 167.90362/s
vus............................: 4 min=4 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `apollo-router`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 14778 ✗ 0
data_received..................: 434 MB 14 MB/s
data_sent......................: 5.9 MB 190 kB/s
http_req_blocked...............: avg=3.29ms min=1.61µs med=3.63µs max=3.25s p(90)=6.95µs p(95)=2.41ms
http_req_connecting............: avg=2.96ms min=0s med=0s max=3.25s p(90)=0s p(95)=2.09ms
http_req_duration..............: avg=885.1ms min=6.6ms med=769.8ms max=4.78s p(90)=1.74s p(95)=2.23s
{ expected_response:true }...: avg=885.1ms min=6.6ms med=769.8ms max=4.78s p(90)=1.74s p(95)=2.23s
http_req_failed................: 0.00% ✓ 0 ✗ 4946
http_req_receiving.............: avg=256ms min=34.74µs med=86.91µs max=3.95s p(90)=999.36ms p(95)=1.42s
http_req_sending...............: avg=20.33ms min=7.88µs med=17.38µs max=2.68s p(90)=622.91µs p(95)=18.92ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=608.76ms min=6.51ms med=561.67ms max=2.65s p(90)=1.09s p(95)=1.23s
http_reqs......................: 4946 160.101949/s
iteration_duration.............: avg=1.83s min=27.99ms med=1.58s max=8.42s p(90)=3.55s p(95)=4.41s
iterations.....................: 4926 159.454549/s
vus............................: 300 min=300 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `hive-gateway`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 9111 ✗ 0
data_received..................: 269 MB 8.1 MB/s
data_sent......................: 3.6 MB 109 kB/s
http_req_blocked...............: avg=858.52µs min=1.94µs med=4.26µs max=20.41ms p(90)=105.93µs p(95)=8.6ms
http_req_connecting............: avg=833.75µs min=0s med=0s max=20.36ms p(90)=0s p(95)=8.41ms
http_req_duration..............: avg=3.04s min=13.08ms med=1.68s max=32.73s p(90)=2.6s p(95)=13.59s
{ expected_response:true }...: avg=3.04s min=13.08ms med=1.68s max=32.73s p(90)=2.6s p(95)=13.59s
http_req_failed................: 0.00% ✓ 0 ✗ 3057
http_req_receiving.............: avg=1.72ms min=43.85µs med=103.08µs max=293.23ms p(90)=633.91µs p(95)=2.81ms
http_req_sending...............: avg=540.61µs min=10.26µs med=23.36µs max=93ms p(90)=237.66µs p(95)=2ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=3.03s min=12.97ms med=1.68s max=32.73s p(90)=2.6s p(95)=13.58s
http_reqs......................: 3057 92.131846/s
iteration_duration.............: avg=3.1s min=202.05ms med=1.72s max=32.75s p(90)=2.65s p(95)=14.22s
iterations.....................: 3037 91.529086/s
vus............................: 31 min=31 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `hive-gateway-bun`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 9015 ✗ 0
data_received..................: 266 MB 8.0 MB/s
data_sent......................: 3.6 MB 108 kB/s
http_req_blocked...............: avg=577.53µs min=1.78µs med=3.66µs max=56.05ms p(90)=110.34µs p(95)=5.17ms
http_req_connecting............: avg=529.37µs min=0s med=0s max=13.01ms p(90)=0s p(95)=4.82ms
http_req_duration..............: avg=3.05s min=17.58ms med=2.87s max=6.36s p(90)=4.56s p(95)=4.93s
{ expected_response:true }...: avg=3.05s min=17.58ms med=2.87s max=6.36s p(90)=4.56s p(95)=4.93s
http_req_failed................: 0.00% ✓ 0 ✗ 3025
http_req_receiving.............: avg=70.15ms min=38.78µs med=181.75µs max=2.02s p(90)=137.36ms p(95)=557.14ms
http_req_sending...............: avg=1.02ms min=8.19µs med=19.7µs max=387.9ms p(90)=328.31µs p(95)=2.36ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=2.97s min=17.07ms med=2.76s max=6.31s p(90)=4.54s p(95)=4.92s
http_reqs......................: 3025 91.010308/s
iteration_duration.............: avg=3.14s min=276.31ms med=2.92s max=6.47s p(90)=4.69s p(95)=4.95s
iterations.....................: 3005 90.408587/s
vus............................: 35 min=35 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `apollo-server`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 8811 ✗ 0
data_received..................: 260 MB 7.9 MB/s
data_sent......................: 3.5 MB 106 kB/s
http_req_blocked...............: avg=1.82ms min=1.47µs med=2.99µs max=51.28ms p(90)=180.24µs p(95)=18.53ms
http_req_connecting............: avg=1.76ms min=0s med=0s max=49.47ms p(90)=110.29µs p(95)=18.21ms
http_req_duration..............: avg=3.15s min=9.94ms med=1.51s max=32.62s p(90)=2.15s p(95)=19.63s
{ expected_response:true }...: avg=3.15s min=9.94ms med=1.51s max=32.62s p(90)=2.15s p(95)=19.63s
http_req_failed................: 0.00% ✓ 0 ✗ 2957
http_req_receiving.............: avg=296.21µs min=41.96µs med=101.17µs max=77.43ms p(90)=232.33µs p(95)=486.89µs
http_req_sending...............: avg=1.33ms min=8.4µs med=15.03µs max=42.68ms p(90)=150.77µs p(95)=10.47ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=3.15s min=9.87ms med=1.51s max=32.62s p(90)=2.15s p(95)=19.63s
http_reqs......................: 2957 89.492148/s
iteration_duration.............: avg=3.19s min=350.4ms med=1.53s max=32.67s p(90)=2.17s p(95)=19.73s
iterations.....................: 2937 88.886857/s
vus............................: 11 min=11 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `mercurius`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 7353 ✗ 0
data_received..................: 217 MB 6.8 MB/s
data_sent......................: 2.9 MB 92 kB/s
http_req_blocked...............: avg=636.41µs min=1.82µs med=4.36µs max=16.31ms p(90)=460.69µs p(95)=6.64ms
http_req_connecting............: avg=619.05µs min=0s med=0s max=15.73ms p(90)=425.09µs p(95)=6.52ms
http_req_duration..............: avg=3.71s min=11.49ms med=3.74s max=8.05s p(90)=4.54s p(95)=5.66s
{ expected_response:true }...: avg=3.71s min=11.49ms med=3.74s max=8.05s p(90)=4.54s p(95)=5.66s
http_req_failed................: 0.00% ✓ 0 ✗ 2471
http_req_receiving.............: avg=13.12ms min=40.87µs med=108.73µs max=973.15ms p(90)=296.85µs p(95)=897.87µs
http_req_sending...............: avg=288.02µs min=9.9µs med=25.01µs max=5.55ms p(90)=158.62µs p(95)=4.18ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=3.7s min=11.36ms med=3.73s max=8.05s p(90)=4.54s p(95)=5.66s
http_reqs......................: 2471 77.252598/s
iteration_duration.............: avg=3.77s min=403.12ms med=3.78s max=8.07s p(90)=4.56s p(95)=5.71s
iterations.....................: 2451 76.627324/s
vus............................: 2 min=2 max=300
vus_max........................: 300 min=300 max=300
Performance Overview
Subgraphs Overview
HTTP Overview
Overview for:
|
Gateway | duration(p95)⬇️ | RPS | Requests | Durations | Notes |
---|---|---|---|---|---|
grafbase | 5777ms | 169 | 11951 total, 0 failed | avg: 2662ms, p95: 5777ms, max: 13035ms, med: 2376ms | ✅ |
apollo-router | 6113ms | 166 | 12077 total, 719 failed | avg: 3005ms, p95: 6113ms, max: 22177ms, med: 2623ms | ❌ 719 failed requests, 719 non-200 responses, 719 unexpected GraphQL errors |
cosmo | 7390ms | 180 | 12632 total, 0 failed | avg: 2469ms, p95: 7390ms, max: 14463ms, med: 1919ms | ✅ |
hive-gateway-bun | 27945ms | 92 | 7460 total, 0 failed | avg: 11394ms, p95: 27945ms, max: 34493ms, med: 10332ms | ✅ |
mercurius | 41801ms | 55 | 5077 total, 0 failed | avg: 21440ms, p95: 41802ms, max: 43088ms, med: 19276ms | ✅ |
hive-gateway | 49331ms | 96 | 8206 total, 0 failed | avg: 10962ms, p95: 49332ms, max: 57350ms, med: 3199ms | ✅ |
apollo-server | 59999ms | 87 | 8073 total, 491 failed | avg: 11514ms, p95: 60000ms, max: 60373ms, med: 2135ms | ❌ 491 failed requests, 491 non-200 responses, 491 unexpected GraphQL errors |
Summary for: `grafbase`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 35793 ✗ 0
data_received..................: 1.1 GB 15 MB/s
data_sent......................: 14 MB 201 kB/s
http_req_blocked...............: avg=367.6ms min=1.45µs med=3.58µs max=10.18s p(90)=1.43s p(95)=2.93s
http_req_connecting............: avg=364.93ms min=0s med=0s max=9.69s p(90)=1.43s p(95)=2.92s
http_req_duration..............: avg=2.66s min=3.11ms med=2.37s max=13.03s p(90)=5.02s p(95)=5.77s
{ expected_response:true }...: avg=2.66s min=3.11ms med=2.37s max=13.03s p(90)=5.02s p(95)=5.77s
http_req_failed................: 0.00% ✓ 0 ✗ 11951
http_req_receiving.............: avg=318.74ms min=31.96µs med=76.96µs max=8.64s p(90)=958.02ms p(95)=1.78s
http_req_sending...............: avg=127.17ms min=7.64µs med=17.72µs max=8.56s p(90)=319.63ms p(95)=823.49ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=2.21s min=3.05ms med=2s max=10.18s p(90)=4.63s p(95)=5.07s
http_reqs......................: 11951 169.560704/s
iteration_duration.............: avg=6.11s min=24.48ms med=5.14s max=30.17s p(90)=12.38s p(95)=14.04s
iterations.....................: 11931 169.276944/s
vus............................: 118 min=74 max=1995
vus_max........................: 2000 min=2000 max=2000
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `apollo-router`
K6 Output
✗ response code was 200
↳ 94% — ✓ 11338 / ✗ 719
✗ no graphql errors
↳ 94% — ✓ 11338 / ✗ 719
✓ valid response structure
█ setup
checks.........................: 95.94% ✓ 34014 ✗ 1438
data_received..................: 997 MB 14 MB/s
data_sent......................: 14 MB 198 kB/s
http_req_blocked...............: avg=664.91ms min=1.5µs med=3.97µs max=12.78s p(90)=3.46s p(95)=4.44s
http_req_connecting............: avg=630.93ms min=0s med=0s max=12.66s p(90)=3.29s p(95)=4.29s
http_req_duration..............: avg=3s min=7.51ms med=2.62s max=22.17s p(90)=5.54s p(95)=6.11s
{ expected_response:true }...: avg=2.97s min=7.51ms med=2.54s max=22.17s p(90)=5.52s p(95)=6.07s
http_req_failed................: 5.95% ✓ 719 ✗ 11358
http_req_receiving.............: avg=218.68ms min=0s med=78.6µs max=9.02s p(90)=686.65ms p(95)=1.59s
http_req_sending...............: avg=160.12ms min=8.63µs med=20.21µs max=18.45s p(90)=421.42ms p(95)=864.99ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=2.62s min=7.44ms med=2.15s max=10.09s p(90)=5.1s p(95)=5.58s
http_reqs......................: 12077 166.802242/s
iteration_duration.............: avg=6.45s min=49.95ms med=5.58s max=25.69s p(90)=12.84s p(95)=14.69s
iterations.....................: 12057 166.52601/s
vus............................: 312 min=58 max=1984
vus_max........................: 2000 min=2000 max=2000
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `cosmo`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 37836 ✗ 0
data_received..................: 1.1 GB 16 MB/s
data_sent......................: 15 MB 214 kB/s
http_req_blocked...............: avg=256.22ms min=1.48µs med=3.25µs max=12.79s p(90)=661.4ms p(95)=1.88s
http_req_connecting............: avg=252.49ms min=0s med=0s max=10.25s p(90)=654.97ms p(95)=1.86s
http_req_duration..............: avg=2.46s min=3.12ms med=1.91s max=14.46s p(90)=5.17s p(95)=7.39s
{ expected_response:true }...: avg=2.46s min=3.12ms med=1.91s max=14.46s p(90)=5.17s p(95)=7.39s
http_req_failed................: 0.00% ✓ 0 ✗ 12632
http_req_receiving.............: avg=375.59ms min=30.56µs med=77.24µs max=11.8s p(90)=726.2ms p(95)=2.17s
http_req_sending...............: avg=185.01ms min=8.58µs med=14.85µs max=12.7s p(90)=373.12ms p(95)=809.77ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=1.9s min=3.04ms med=1.5s max=11.33s p(90)=4.44s p(95)=4.94s
http_reqs......................: 12632 180.207759/s
iteration_duration.............: avg=5.51s min=8.72ms med=4.41s max=29.13s p(90)=12.02s p(95)=14.15s
iterations.....................: 12612 179.92244/s
vus............................: 4 min=4 max=1998
vus_max........................: 2000 min=2000 max=2000
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `hive-gateway-bun`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 22320 ✗ 0
data_received..................: 655 MB 8.1 MB/s
data_sent......................: 8.9 MB 109 kB/s
http_req_blocked...............: avg=20.94ms min=1.98µs med=4.54µs max=926.69ms p(90)=38.1ms p(95)=146.75ms
http_req_connecting............: avg=20.48ms min=0s med=0s max=926.64ms p(90)=36.84ms p(95)=143.92ms
http_req_duration..............: avg=11.39s min=19.47ms med=10.33s max=34.49s p(90)=24.94s p(95)=27.94s
{ expected_response:true }...: avg=11.39s min=19.47ms med=10.33s max=34.49s p(90)=24.94s p(95)=27.94s
http_req_failed................: 0.00% ✓ 0 ✗ 7460
http_req_receiving.............: avg=105.84ms min=39.96µs med=104.8µs max=6.84s p(90)=4.41ms p(95)=133.58ms
http_req_sending...............: avg=9ms min=9.18µs med=26.43µs max=610.29ms p(90)=17.56ms p(95)=56.63ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=11.27s min=19.13ms med=10.28s max=34.49s p(90)=24.93s p(95)=27.94s
http_reqs......................: 7460 92.174536/s
iteration_duration.............: avg=11.69s min=486.08ms med=10.73s max=35.96s p(90)=25.11s p(95)=28.69s
iterations.....................: 7440 91.927419/s
vus............................: 105 min=57 max=1999
vus_max........................: 2000 min=2000 max=2000
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `mercurius`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 15102 ✗ 0
data_received..................: 446 MB 4.9 MB/s
data_sent......................: 6.1 MB 66 kB/s
http_req_blocked...............: avg=203.94µs min=1.74µs med=4.22µs max=15.85ms p(90)=501.48µs p(95)=696.82µs
http_req_connecting............: avg=171.47µs min=0s med=0s max=15.79ms p(90)=426.12µs p(95)=583.99µs
http_req_duration..............: avg=21.44s min=10.87ms med=19.27s max=43.08s p(90)=40.83s p(95)=41.8s
{ expected_response:true }...: avg=21.44s min=10.87ms med=19.27s max=43.08s p(90)=40.83s p(95)=41.8s
http_req_failed................: 0.00% ✓ 0 ✗ 5077
http_req_receiving.............: avg=32.48ms min=40.26µs med=103.14µs max=3.4s p(90)=475.07µs p(95)=2.58ms
http_req_sending...............: avg=65.34µs min=7.76µs med=26.57µs max=11.91ms p(90)=68.52µs p(95)=103.72µs
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=21.4s min=10.77ms med=19.27s max=43.08s p(90)=40.6s p(95)=41.73s
http_reqs......................: 5077 55.380081/s
iteration_duration.............: avg=21.48s min=141.39ms med=19.09s max=45.07s p(90)=41.05s p(95)=41.88s
iterations.....................: 4991 54.44199/s
vus............................: 379 min=59 max=2000
vus_max........................: 2000 min=2000 max=2000
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `hive-gateway`
K6 Output
✓ response code was 200
✓ no graphql errors
✓ valid response structure
█ setup
checks.........................: 100.00% ✓ 24558 ✗ 0
data_received..................: 721 MB 8.5 MB/s
data_sent......................: 9.7 MB 114 kB/s
http_req_blocked...............: avg=9.95ms min=1.77µs med=4.54µs max=512.3ms p(90)=32.93ms p(95)=73.94ms
http_req_connecting............: avg=9.75ms min=0s med=0s max=329.98ms p(90)=32.36ms p(95)=73.51ms
http_req_duration..............: avg=10.96s min=12.1ms med=3.19s max=57.34s p(90)=41.82s p(95)=49.33s
{ expected_response:true }...: avg=10.96s min=12.1ms med=3.19s max=57.34s p(90)=41.82s p(95)=49.33s
http_req_failed................: 0.00% ✓ 0 ✗ 8206
http_req_receiving.............: avg=5.42ms min=40.96µs med=91.92µs max=884.57ms p(90)=908.93µs p(95)=4.79ms
http_req_sending...............: avg=5.13ms min=9.53µs med=25.45µs max=849.92ms p(90)=11.37ms p(95)=28.51ms
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=10.95s min=11.99ms med=3.19s max=57.34s p(90)=41.79s p(95)=49.3s
http_reqs......................: 8206 96.359781/s
iteration_duration.............: avg=11.09s min=78.56ms med=3.28s max=57.61s p(90)=41.88s p(95)=49.46s
iterations.....................: 8186 96.124929/s
vus............................: 65 min=62 max=2000
vus_max........................: 2000 min=2000 max=2000
Performance Overview
Subgraphs Overview
HTTP Overview
Summary for: `apollo-server`
K6 Output
✗ response code was 200
↳ 93% — ✓ 7562 / ✗ 491
✗ no graphql errors
↳ 93% — ✓ 7562 / ✗ 491
✓ valid response structure
█ setup
checks.........................: 95.85% ✓ 22686 ✗ 982
data_received..................: 666 MB 7.2 MB/s
data_sent......................: 9.6 MB 104 kB/s
http_req_blocked...............: avg=902.79µs min=1.39µs med=3.25µs max=124.59ms p(90)=350.04µs p(95)=688.43µs
http_req_connecting............: avg=878.04µs min=0s med=0s max=123.43ms p(90)=280.77µs p(95)=578.94µs
http_req_duration..............: avg=11.51s min=10.33ms med=2.13s max=1m0s p(90)=54.43s p(95)=59.99s
{ expected_response:true }...: avg=8.37s min=10.33ms med=2.06s max=59.97s p(90)=36.45s p(95)=46.99s
http_req_failed................: 6.08% ✓ 491 ✗ 7582
http_req_receiving.............: avg=220.77µs min=0s med=99.61µs max=119.7ms p(90)=230.15µs p(95)=364.66µs
http_req_sending...............: avg=307.45µs min=8.49µs med=16.18µs max=85.69ms p(90)=62.52µs p(95)=129.47µs
http_req_tls_handshaking.......: avg=0s min=0s med=0s max=0s p(90)=0s p(95)=0s
http_req_waiting...............: avg=11.51s min=10.21ms med=2.13s max=1m0s p(90)=54.43s p(95)=59.99s
http_reqs......................: 8073 87.124682/s
iteration_duration.............: avg=11.55s min=46.73ms med=2.15s max=1m0s p(90)=54.7s p(95)=1m0s
iterations.....................: 8053 86.90884/s
vus............................: 53 min=53 max=2000
vus_max........................: 2000 min=2000 max=2000
Performance Overview
Subgraphs Overview
HTTP Overview
eed7384
to
fdb4c4c
Compare
This PR contains the following updates:
v2.5.0
->v2.6.0
Release Notes
apollographql/router (ghcr.io/apollographql/router)
v2.6.0
Compare Source
🚀 Features
[Subgraph Insights] Experimental Apollo Subgraph Fetch Histogram (PR #8013, PR #8045)
This change adds a new, experimental histogram to capture subgraph fetch duration for GraphOS. This will
eventually be used to power subgraph-level insights in Apollo Studio.
This can be toggled on using a new boolean config flag:
The new instrument is only sent to GraphOS and is not available in 3rd-party OTel export targets. It is not currently
customizable. Users requiring a customizable alternative can use the existing
http.client.request.duration
instrument, which measures the same value.
By @rregitsky in #8013 and #8045
Redis cache metrics (PR #7920)
The router now provides Redis cache monitoring with new metrics that help track performance, errors, and resource usage.
Connection and performance metrics:
apollo.router.cache.redis.connections
: Number of active Redis connectionsapollo.router.cache.redis.command_queue_length
: Commands waiting to be sent to Redis, indicates if Redis is keeping up with demandapollo.router.cache.redis.commands_executed
: Total number of Redis commands executedapollo.router.cache.redis.redelivery_count
: Commands retried due to connection issuesapollo.router.cache.redis.errors
: Redis errors by type, to help diagnose authentication, network, and configuration problemsExperimental performance metrics:
experimental.apollo.router.cache.redis.network_latency_avg
: Average network latency to Redisexperimental.apollo.router.cache.redis.latency_avg
: Average Redis command execution timeexperimental.apollo.router.cache.redis.request_size_avg
: Average request payload sizeexperimental.apollo.router.cache.redis.response_size_avg
: Average response payload sizeYou can configure how often metrics are collected using the
metrics_interval
setting:By @BrynCooke in #7920
Granular license enforcement (PR #7917)
The router license functionality now allows granular specification of features enabled to support current and future pricing plans.
By @DMallare in #7917
Additional Connector Custom Instrument Selectors (PR #8045)
This adds new custom instrument selectors for Connectors and enhances some existing selectors. The new selectors are:
supergraph_operation_name
supergraph_operation_kind
query
,mutation
,subscription
)request_context
connector_on_response_error
is_successful
condition. Or, if that condition is not set,returns true when the response has a non-200 status code
These selectors were modified to add additional functionality:
connector_request_mapping_problems
boolean
variant that will returntrue
when a mapping problem exists on the requestconnector_response_mapping_problems
boolean
variant that will returntrue
when a mapping problem exists on the responseBy @rregitsky in #8045
Enable jemalloc on MacOS (PR #8046)
This PR enables the jemalloc allocator on MacOS by default, making it easier to do memory profiling. Previously, this was only done for Linux.
By @Velfi in #8046
🐛 Fixes
Entity caching: fix inconsistency in cache-control header handling (PR #7987)
When the Subgraph Entity Caching feature is in use, it determines the
Cache-Control
HTTP response header sent to supergraph clients based on those received from subgraph servers.In this process, Apollo Router only emits the
max-age
directive and nots-maxage
.This PR fixes a bug where, for a query that involved a single subgraph fetch that was not already cached, the subgraph response’s
Cache-Control
header would be forwarded as-is.Instead, it now goes through the same algorithm as other cases.
By @SimonSapin in #7987
Query planning errors with progressive override on interface implementations (PR #7929)
The router now correctly generates query plans when using progressive override (
@override
with labels) on types that implement interfaces within the same subgraph. Previously, the Rust query planner would fail to generate plans for these scenarios with the error"Was not able to find any options for {}: This shouldn't have happened."
, while the JavaScript planner handled them correctly.This fix resolves planning failures when your schema uses:
The router will now successfully plan and execute queries that previously resulted in query planning errors.
By @TylerBloom in #7929
Reliably distinguish GraphQL errors and transport errors in subscriptions (PR #7901)
The Multipart HTTP protocol for GraphQL Subscriptions distinguishes between GraphQL-level errors and fatal transport-level errors. The router previously used a heuristic to determine if a given error was fatal or not, which could sometimes cause errors to be wrongly classified. For example, if a subgraph returned a GraphQL-level error for a subscription and then immediately ended the subscription, the router might propagate this as a fatal transport-level error.
This is now fixed. Fatal transport-level errors are tagged as such when they are constructed, so the router can reliably know how to serialize errors when sending them to the client.
By @goto-bus-stop in #7901
📚 Documentation
Update Documentation To Add DockerHub References
Now that we have a DockerHub account we have published the Runtime Container to that account.
This fix simply adds a reference to that to the documentation
By @jonathanrainer in #8054
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.