fix finally symfony frankenphp

This commit is contained in:
2024-04-01 21:57:47 +02:00
parent 17fb386b50
commit 7cad7ec1bf

View File

@ -1789,24 +1789,24 @@ Similar to Laravel too, just slightly better in the same context. Let's see if i
Iteration creation rate = **5/s**
```txt
checks.........................: 100.00% ✓ 8364 ✗ 0
data_received..................: 76 MB 1.0 MB/s
data_sent......................: 785 kB 11 kB/s
dropped_iterations.............: 137 1.851966/s
http_req_blocked...............: avg=242.33µs min=234ns med=943ns max=188.97ms p(90)=1.67µs p(95)=1.89µs
http_req_connecting............: avg=17.81µs min=0s med=0s max=32.11ms p(90)=0s p(95)=0s
http_req_duration..............: avg=382.92ms min=21.37ms med=195.95ms max=1.03s p(90)=834.69ms p(95)=856.14ms
{ expected_response:true }...: avg=382.92ms min=21.37ms med=195.95ms max=1.03s p(90)=834.69ms p(95)=856.14ms
http_req_failed................: 0.00% ✓ 0 8364
http_req_receiving.............: avg=972.77µs min=40.4µs med=506.22µs max=216.57ms p(90)=1.37ms p(95)=2.09ms
http_req_sending...............: avg=236.47µs min=30.67µs med=117.91µs max=78.05ms p(90)=226.06µs p(95)=313.63µs
http_req_tls_handshaking.......: avg=216.88µs min=0s med=0s max=156.72ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=381.71ms min=20.36ms med=193.98ms max=969.38ms p(90)=833.5ms p(95)=854.8ms
http_reqs......................: 8364 113.064556/s
iteration_duration.............: avg=19.59s min=4.27s med=20.42s max=26.92s p(90)=24.57s p(95)=25.21s
iterations.....................: 164 2.216952/s
vus............................: 15 min=5 max=50
vus_max........................: 50 min=50 max=50
checks.........................: 100.00% ✓ 11679 ✗ 0
data_received..................: 106 MB 1.6 MB/s
data_sent......................: 1.1 MB 16 kB/s
dropped_iterations.............: 72 1.058701/s
http_req_blocked...............: avg=127.87µs min=180ns med=1.12µs max=48.28ms p(90)=1.59µs p(95)=1.78µs
http_req_connecting............: avg=5.13µs min=0s med=0s max=5.29ms p(90)=0s p(95)=0s
http_req_duration..............: avg=241.86ms min=10.69ms med=165.34ms max=935.06ms p(90)=495.74ms p(95)=513.79ms
{ expected_response:true }...: avg=241.86ms min=10.69ms med=165.34ms max=935.06ms p(90)=495.74ms p(95)=513.79ms
http_req_failed................: 0.00% ✓ 0 ✗ 11679
http_req_receiving.............: avg=745.15µs min=27.68µs med=385.42µs max=207.74ms p(90)=1.02ms p(95)=1.58ms
http_req_sending...............: avg=171.74µs min=27.68µs med=124.35µs max=23.65ms p(90)=202.8µs p(95)=258.4µs
http_req_tls_handshaking.......: avg=118.83µs min=0s med=0s max=47.04ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=240.95ms min=10.4ms med=164.75ms max=934.19ms p(90)=495.14ms p(95)=513.11ms
http_reqs......................: 11679 171.73007/s
iteration_duration.............: avg=12.38s min=1.78s med=13.5s max=17.82s p(90)=15.61s p(95)=16.21s
iterations.....................: 229 3.367256/s
vus............................: 1 min=1 max=50
vus_max........................: 50 min=50 max=50
```
{{< tabs >}}
@ -1817,14 +1817,13 @@ vus_max........................: 50 min=50 max=50
{
label: 'Req/s',
data: [
56, 119, 116, 110, 112, 111, 130, 115, 116, 112,
114, 119, 115, 115, 115, 110, 121, 120, 115, 111,
113, 107, 113, 116, 109, 108, 112, 117, 117, 112,
117, 113, 108, 112, 106, 114, 122, 118, 120, 116,
114, 123, 116, 118, 109, 115, 111, 117, 117, 113,
115, 108, 108, 111, 112, 115, 114, 110, 111, 113,
114, 119, 113, 113, 114, 113, 113, 112, 114, 108,
112, 110, 113, 104
46, 172, 170, 177, 165, 173, 176, 168, 170, 162,
174, 171, 168, 177, 169, 178, 176, 170, 116, 174,
179, 180, 172, 181, 172, 180, 178, 171, 179, 168,
172, 177, 172, 175, 170, 181, 176, 172, 180, 170,
178, 182, 171, 179, 171, 176, 177, 167, 181, 170,
177, 175, 173, 179, 171, 177, 179, 172, 178, 172,
170, 179, 172, 179, 167, 174, 177, 165, 34
]
}
]
@ -1839,12 +1838,12 @@ vus_max........................: 50 min=50 max=50
{
label: 'VUs',
data: [
5, 10, 15, 20, 23, 30, 35, 40, 44, 48, 50, 50,
50, 50, 50, 50, 50, 50, 50, 50, 48, 48, 48, 49,
49, 48, 50, 50, 50, 49, 50, 47, 50, 49, 50, 49,
50, 50, 49, 50, 50, 50, 50, 47, 48, 50, 48, 49,
49, 49, 50, 50, 49, 49, 48, 50, 50, 48, 47, 46,
46, 43, 43, 40, 38, 34, 32, 27, 22, 15
5, 9, 11, 14, 17, 20, 23, 25, 28, 31, 34, 37,
40, 42, 45, 49, 49, 50, 48, 50, 50, 49, 48, 48,
50, 49, 49, 47, 49, 44, 49, 50, 49, 50, 50, 49,
50, 49, 50, 48, 48, 50, 47, 47, 48, 49, 49, 49,
50, 49, 49, 48, 50, 49, 49, 48, 50, 50, 47, 47,
47, 43, 42, 35, 30, 23, 16, 1
]
}
]
@ -1855,14 +1854,13 @@ vus_max........................: 50 min=50 max=50
{
label: 'Duration (ms)',
data: [
47, 62, 105, 154, 180, 191, 245, 263, 310, 369,
369, 421, 427, 416, 438, 426, 425, 392, 431, 429,
437, 465, 448, 430, 443, 431, 480, 435, 411, 420,
419, 436, 466, 471, 426, 448, 419, 415, 424, 397,
427, 434, 412, 415, 459, 424, 450, 435, 407, 425,
406, 477, 467, 422, 456, 424, 450, 437, 431, 445,
420, 429, 413, 394, 398, 376, 404, 363, 323, 321,
267, 249, 188, 98
29, 35, 55, 66, 89, 101, 115, 136, 149, 179,
183, 201, 222, 225, 253, 254, 274, 246, 454, 293,
279, 268, 290, 274, 286, 277, 277, 288, 276, 290,
260, 275, 280, 286, 282, 276, 278, 277, 273, 293,
266, 276, 296, 268, 277, 275, 279, 293, 286, 293,
274, 288, 280, 275, 288, 274, 275, 286, 269, 289,
269, 268, 251, 232, 214, 170, 131, 80, 25
]
}
]
@ -1876,11 +1874,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.03, 0.04, 0.29, 0.34,
0.33, 0.33, 0.32, 0.32,
0.31, 0.34, 0.34, 0.3,
0.32, 0.34, 0.32, 0.31,
0.27, 0.03, 0.03
0.1, 0.04, 0.25, 0.37,
0.39, 0.33, 0.38, 0.36,
0.36, 0.37, 0.32, 0.37,
0.39, 0.37, 0.36, 0.3,
0.04, 0.03, 0.03
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -1889,11 +1887,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.03, 0.18, 0.2,
0.2, 0.23, 0.2, 0.19,
0.21, 0.2, 0.2, 0.22,
0.19, 0.18, 0.21, 0.2,
0.17, 0.02, 0.02
0.03, 0.02, 0.04, 0.05,
0.06, 0.04, 0.07, 0.06,
0.07, 0.07, 0.05, 0.07,
0.06, 0.07, 0.06, 0.05,
0.02, 0.02, 0.01
],
borderColor: '#ff6384',
backgroundColor: '#ff6384',
@ -1907,11 +1905,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.03, 0.07, 0.59, 0.6,
0.6, 0.6, 0.57, 0.59,
0.57, 0.6, 0.59, 0.58,
0.58, 0.59, 0.58, 0.56,
0.36, 0.02, 0.03
0.03, 0.03, 0.33, 0.9,
0.87, 0.9, 0.88, 0.93,
0.94, 0.94, 0.94, 0.93,
0.94, 0.94, 0.94, 0.93,
0.15, 0.03, 0.02
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -1920,11 +1918,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.02, 0.04, 0.04,
0.02, 0.02, 0.03, 0.03,
0.04, 0.03, 0.04, 0.04,
0.04, 0.04, 0.04, 0.04,
0.04, 0.04, 0.05, 0.05,
0.04, 0.04, 0.04, 0.04,
0.03, 0.02, 0.02
0.03, 0.05, 0.04, 0.04,
0.02, 0.02, 0.02
],
borderColor: '#ff6384',
backgroundColor: '#ff6384',
@ -1943,22 +1941,23 @@ No enhancements here, it's even worse than Apache equivalent. No CPU limitations
Iteration creation rate = **1/s**
```txt
checks.........................: 100.00% ✓ 18736 ✗ 0
data_received..................: 34 MB 380 kB/s
data_sent......................: 1.5 MB 17 kB/s
dropped_iterations.............: 11 0.122204/s
http_req_blocked...............: avg=84.84µs min=185ns med=1.14µs max=87.39ms p(90)=1.62µs p(95)=1.8µs
http_req_connecting............: avg=9.38µs min=0s med=0s max=59.86ms p(90)=0s p(95)=0s
http_req_duration..............: avg=173.8ms min=11.7ms med=55.74ms max=687.96ms p(90)=440.25ms p(95)=460.86ms
{ expected_response:true }...: avg=173.8ms min=11.7ms med=55.74ms max=687.96ms p(90)=440.25ms p(95)=460.86ms
http_req_failed................: 0.00% ✓ 0 ✗ 18736
http_req_receiving.............: avg=441.13µs min=22.96µs med=197.15µs max=97.18ms p(90)=687.71µs p(95)=1.05ms
http_req_sending...............: avg=179.98µs min=25.54µs med=128.13µs max=33.91ms p(90)=216.85µs p(95)=283.17µs
http_req_tls_handshaking.......: avg=71.87µs min=0s med=0s max=47.53ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=173.18ms min=0s med=54.76ms max=687.54ms p(90)=439.6ms p(95)=460.32ms
http_reqs......................: 18736 208.146591/s
vus............................: 50 min=1 max=50
vus_max........................: 50 min=50 max=50
checks.........................: 100.00% ✓ 94672 ✗ 0
data_received..................: 171 MB 2.1 MB/s
data_sent......................: 7.5 MB 94 kB/s
http_req_blocked...............: avg=14.88µs min=182ns med=643ns max=93.7ms p(90)=1.17µs p(95)=1.34µs
http_req_connecting............: avg=945ns min=0s med=0s max=9.67ms p(90)=0s p(95)=0s
http_req_duration..............: avg=14.55ms min=1.89ms med=10.7ms max=318.64ms p(90)=27.5ms p(95)=35.48ms
{ expected_response:true }...: avg=14.55ms min=1.89ms med=10.7ms max=318.64ms p(90)=27.5ms p(95)=35.48ms
http_req_failed................: 0.00% ✓ 0 ✗ 94672
http_req_receiving.............: avg=895.52µs min=16.57µs med=242.05µs max=212.14ms p(90)=1.51ms p(95)=2.88ms
http_req_sending...............: avg=172.15µs min=15.82µs med=77.99µs max=151.35ms p(90)=163.13µs p(95)=228.85µs
http_req_tls_handshaking.......: avg=12.6µs min=0s med=0s max=92.96ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=13.48ms min=0s med=9.93ms max=317.4ms p(90)=25.91ms p(95)=32.93ms
http_reqs......................: 94672 1191.229807/s
iteration_duration.............: avg=22.99s min=10.92s med=23.68s max=31.86s p(90)=30.33s p(95)=31.11s
iterations.....................: 61 0.767545/s
vus............................: 2 min=1 max=30
vus_max........................: 50 min=50 max=50
```
{{< tabs >}}
@ -1969,14 +1968,15 @@ vus_max........................: 50 min=50 max=50
{
label: 'Req/s',
data: [
22, 96, 152, 170, 201, 218, 202, 210, 177, 209, 217,
204, 213, 202, 223, 224, 206, 221, 210, 233, 226, 210,
222, 220, 222, 219, 209, 214, 203, 229, 225, 210, 221,
202, 223, 214, 206, 214, 211, 223, 213, 204, 213, 209,
226, 217, 206, 226, 200, 223, 221, 198, 215, 211, 220,
218, 193, 210, 202, 213, 218, 210, 203, 187, 210, 225,
203, 210, 198, 213, 212, 199, 219, 213, 221, 221, 209,
215, 218, 231, 221, 213, 202, 206, 214, 228, 200
77, 197, 295, 628, 880, 1008, 939, 1206, 1212,
1197, 1128, 1171, 1326, 1229, 778, 1325, 1201, 1321,
1315, 1316, 1314, 1217, 1359, 1275, 1335, 1364, 1199,
1418, 1350, 1368, 1327, 1253, 983, 1417, 1405, 1338,
1248, 1403, 1455, 1384, 823, 853, 1121, 815, 961,
1082, 1243, 1474, 1332, 1311, 1256, 555, 1016, 1241,
1055, 1218, 1259, 1447, 1492, 1485, 1487, 1289, 1481,
1403, 1506, 1399, 1250, 1433, 1460, 1157, 1386, 1231,
1471, 1318, 1377, 1332, 1127, 1233, 903, 229
]
}
]
@ -1991,14 +1991,13 @@ vus_max........................: 50 min=50 max=50
{
label: 'VUs',
data: [
1, 2, 3, 4, 5, 6, 8, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
50
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
10, 11, 11, 12, 12, 13, 13, 14, 14, 14, 15, 15,
16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 19, 19,
19, 20, 20, 20, 20, 20, 21, 22, 22, 23, 23, 23,
24, 24, 26, 25, 25, 25, 26, 27, 27, 28, 29, 29,
30, 28, 27, 27, 26, 25, 24, 23, 23, 22, 21, 18,
18, 15, 14, 13, 10, 6, 2
]
}
]
@ -2009,14 +2008,13 @@ vus_max........................: 50 min=50 max=50
{
label: 'Duration (ms)',
data: [
40, 20, 19, 23, 24, 27, 32, 38, 50, 47, 50, 54,
62, 70, 65, 71, 76, 85, 90, 84, 91, 97, 109, 109,
108, 117, 120, 138, 145, 126, 138, 139, 157, 167, 153, 165,
172, 185, 177, 179, 192, 189, 213, 213, 193, 210, 210, 228,
239, 219, 228, 234, 253, 239, 230, 219, 240, 258, 253, 228,
231, 223, 258, 270, 233, 225, 226, 253, 251, 235, 233, 237,
249, 234, 218, 233, 218, 252, 228, 215, 225, 219, 260, 248,
235, 218, 228
9, 9, 9, 6, 5, 6, 7, 6, 7, 8, 9, 10,
8, 9, 14, 9, 10, 9, 10, 10, 11, 12, 11, 12,
12, 12, 13, 11, 12, 12, 13, 14, 18, 12, 13, 15,
15, 14, 13, 15, 24, 24, 18, 27, 23, 21, 19, 15,
18, 18, 19, 45, 24, 21, 24, 22, 21, 19, 19, 19,
20, 22, 18, 19, 17, 18, 19, 16, 16, 20, 15, 16,
12, 12, 10, 10, 10, 7, 5, 5
]
}
]
@ -2030,11 +2028,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.04, 0.04, 0.32, 0.44,
0.45, 0.47, 0.5, 0.47,
0.49, 0.46, 0.47, 0.48,
0.47, 0.44, 0.45, 0.47,
0.47, 0.46, 0.49
0.03, 0.04, 0.31, 0.52,
0.53, 0.59, 0.6, 0.58,
0.59, 0.61, 0.47, 0.57,
0.48, 0.64, 0.64, 0.62,
0.61, 0.39, 0.04
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -2043,11 +2041,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.02, 0.24, 0.33,
0.35, 0.35, 0.35, 0.35,
0.33, 0.36, 0.33, 0.34,
0.33, 0.33, 0.34, 0.32,
0.34, 0.35, 0.33
0.02, 0.01, 0.07, 0.11,
0.1, 0.11, 0.12, 0.12,
0.12, 0.13, 0.1, 0.14,
0.1, 0.13, 0.14, 0.13,
0.13, 0.08, 0.02
],
borderColor: '#ff6384',
backgroundColor: '#ff6384',
@ -2061,11 +2059,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.03, 0.04, 0.12, 0.1,
0.12, 0.11, 0.09, 0.09,
0.09, 0.09, 0.09, 0.11,
0.09, 0.09, 0.14, 0.14,
0.08, 0.08, 0.12
0.03, 0.04, 0.16, 0.3,
0.34, 0.35, 0.38, 0.39,
0.36, 0.38, 0.34, 0.38,
0.32, 0.39, 0.41, 0.39,
0.39, 0.32, 0.03
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -2074,11 +2072,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.03, 0.06, 0.06,
0.06, 0.06, 0.05, 0.05,
0.05, 0.05, 0.05, 0.06,
0.04, 0.05, 0.07, 0.06,
0.04, 0.05, 0.07
0.02, 0.02, 0.05, 0.06,
0.09, 0.09, 0.08, 0.08,
0.09, 0.08, 0.08, 0.09,
0.08, 0.1, 0.1, 0.09,
0.09, 0.07, 0.02
],
borderColor: '#ff6384',
backgroundColor: '#ff6384',
@ -2400,27 +2398,27 @@ Now it performs clearly slower than with MySQL in same scenario. Slightly better
#### Symfony FrankenPHP PgSQL scenario 1
Iteration creation rate = **5/s**
Iteration creation rate = **10/s**
```txt
checks.........................: 100.00% ✓ 7293 ✗ 0
data_received..................: 66 MB 903 kB/s
data_sent......................: 695 kB 9.5 kB/s
dropped_iterations.............: 157 2.144507/s
http_req_blocked...............: avg=229.6µs min=255ns med=1.19µs max=66.85ms p(90)=1.72µs p(95)=1.95µs
http_req_connecting............: avg=11.28µs min=0s med=0s max=8.19ms p(90)=0s p(95)=0s
http_req_duration..............: avg=426.12ms min=24.25ms med=160.7ms max=1.16s p(90)=952.44ms p(95)=977.43ms
{ expected_response:true }...: avg=426.12ms min=24.25ms med=160.7ms max=1.16s p(90)=952.44ms p(95)=977.43ms
http_req_failed................: 0.00% ✓ 0 ✗ 7293
http_req_receiving.............: avg=720.11µs min=47.48µs med=473.64µs max=64.23ms p(90)=1.12ms p(95)=1.66ms
http_req_sending...............: avg=198.91µs min=23.08µs med=138.03µs max=65.84ms p(90)=229.09µs p(95)=294.47µs
http_req_tls_handshaking.......: avg=210.76µs min=0s med=0s max=48.59ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=425.2ms min=22.69ms med=159.27ms max=1.16s p(90)=951.54ms p(95)=976.27ms
http_reqs......................: 7293 99.617121/s
iteration_duration.............: avg=21.79s min=5.07s med=22.24s max=33.97s p(90)=28.23s p(95)=29.1s
iterations.....................: 143 1.953277/s
vus............................: 1 min=1 max=50
vus_max........................: 50 min=50 max=50
checks.........................: 100.00% ✓ 22287 ✗ 0
data_received..................: 201 MB 3.1 MB/s
data_sent......................: 1.9 MB 30 kB/s
dropped_iterations.............: 164 2.548995/s
http_req_blocked...............: avg=61.02µs min=234ns med=1.01µs max=131.72ms p(90)=1.48µs p(95)=1.68µs
http_req_connecting............: avg=6.79µs min=0s med=0s max=62.5ms p(90)=0s p(95)=0s
http_req_duration..............: avg=130.52ms min=6.1ms med=129.59ms max=404.9ms p(90)=199.67ms p(95)=213.58ms
{ expected_response:true }...: avg=130.52ms min=6.1ms med=129.59ms max=404.9ms p(90)=199.67ms p(95)=213.58ms
http_req_failed................: 0.00% ✓ 0 22287
http_req_receiving.............: avg=880.47µs min=20.89µs med=297.79µs max=216.18ms p(90)=904.22µs p(95)=1.78ms
http_req_sending...............: avg=214.44µs min=29.19µs med=114.19µs max=92.18ms p(90)=204.97µs p(95)=297.4µs
http_req_tls_handshaking.......: avg=50.13µs min=0s med=0s max=54.56ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=129.43ms min=0s med=128.65ms max=396.55ms p(90)=198.43ms p(95)=212.35ms
http_reqs......................: 22287 346.399123/s
iteration_duration.............: avg=6.7s min=1.75s med=7.06s max=8.21s p(90)=7.47s p(95)=7.63s
iterations.....................: 437 6.79214/s
vus............................: 14 min=11 max=50
vus_max........................: 50 min=50 max=50
```
{{< tabs >}}
@ -2431,13 +2429,14 @@ vus_max........................: 50 min=50 max=50
{
label: 'Req/s',
data: [
29, 104, 107, 103, 104, 101, 103, 105, 107, 105, 103,
103, 103, 103, 103, 102, 100, 101, 95, 102, 100, 102,
102, 97, 101, 100, 102, 101, 98, 99, 98, 103, 100,
93, 98, 103, 104, 101, 100, 101, 104, 108, 105, 100,
104, 101, 100, 101, 97, 99, 101, 101, 100, 94, 102,
98, 101, 103, 96, 102, 99, 102, 97, 97, 97, 99,
103, 101, 94, 100, 100, 95, 95, 11
122, 341, 348, 346, 359, 338, 361, 359, 345,
360, 330, 352, 361, 344, 359, 334, 362, 323,
346, 358, 335, 357, 352, 348, 358, 337, 359,
357, 345, 357, 339, 358, 350, 333, 355, 332,
359, 359, 349, 358, 333, 356, 359, 341, 352,
333, 355, 360, 344, 356, 340, 360, 360, 348,
355, 337, 346, 354, 345, 359, 337, 354, 341,
338, 179
]
}
]
@ -2452,13 +2451,12 @@ vus_max........................: 50 min=50 max=50
{
label: 'VUs',
data: [
5, 10, 15, 20, 25, 29, 32, 36, 40, 45, 50, 50,
50, 50, 50, 50, 49, 50, 50, 50, 50, 50, 50, 50,
50, 49, 50, 49, 49, 49, 49, 50, 49, 50, 49, 48,
50, 48, 50, 50, 50, 50, 50, 49, 50, 50, 49, 50,
50, 49, 49, 50, 48, 48, 50, 49, 50, 50, 49, 49,
47, 44, 40, 38, 33, 31, 29, 27, 26, 21, 18, 12,
1
11, 18, 23, 28, 34, 38, 44, 49, 49, 50, 50, 48,
49, 47, 48, 49, 49, 50, 48, 45, 50, 48, 49, 50,
50, 49, 49, 47, 46, 46, 50, 50, 48, 49, 47, 48,
47, 47, 50, 50, 48, 50, 48, 48, 48, 50, 50, 48,
50, 50, 47, 49, 49, 50, 48, 50, 47, 46, 48, 49,
47, 39, 31, 14
]
}
]
@ -2469,14 +2467,13 @@ vus_max........................: 50 min=50 max=50
{
label: 'Duration (ms)',
data: [
57, 61, 103, 147, 196, 247, 275, 310, 315, 382,
431, 466, 468, 455, 478, 502, 478, 494, 491, 519,
510, 484, 483, 488, 526, 497, 479, 485, 478, 529,
517, 469, 495, 491, 547, 490, 464, 479, 472, 512,
498, 458, 466, 457, 515, 497, 483, 485, 498, 534,
507, 477, 502, 483, 496, 500, 480, 490, 493, 518,
510, 467, 463, 430, 422, 354, 304, 280, 279, 278,
220, 187, 118, 48
25, 37, 54, 69, 82, 104, 111, 128, 142, 136,
149, 141, 134, 142, 130, 142, 137, 154, 141, 134,
137, 136, 138, 141, 137, 146, 138, 136, 138, 133,
140, 137, 142, 148, 140, 144, 135, 134, 141, 137,
147, 138, 137, 141, 134, 151, 139, 137, 144, 138,
145, 136, 136, 143, 137, 146, 141, 136, 137, 134,
144, 127, 109, 85, 40
]
}
]
@ -2490,11 +2487,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.04, 0.19, 0.43, 0.43,
0.41, 0.42, 0.42, 0.41,
0.41, 0.41, 0.42, 0.42,
0.4, 0.41, 0.38, 0.37,
0.07, 0.07, 0.03
0.03, 0.03, 0.28, 0.33,
0.34, 0.33, 0.34, 0.35,
0.34, 0.34, 0.35, 0.34,
0.33, 0.34, 0.32, 0.03,
0.04, 0.04, 0.03
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -2503,11 +2500,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.09, 0.2, 0.19,
0.19, 0.18, 0.17, 0.17,
0.17, 0.18, 0.19, 0.19,
0.18, 0.17, 0.17, 0.17,
0.04, 0.04, 0.02
0.01, 0.02, 0.05, 0.05,
0.06, 0.06, 0.05, 0.05,
0.06, 0.05, 0.05, 0.06,
0.05, 0.07, 0.05, 0.01,
0.02, 0.02, 0.02
],
borderColor: '#ff6384',
backgroundColor: '#ff6384',
@ -2521,11 +2518,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.02, 0.26, 0.39, 0.39,
0.36, 0.37, 0.38, 0.36,
0.35, 0.35, 0.36, 0.36,
0.34, 0.34, 0.35, 0.29,
0.04, 0.03, 0.03
0.03, 0.03, 0.54, 0.93,
0.93, 0.91, 0.92, 0.93,
0.91, 0.92, 0.93, 0.93,
0.93, 0.92, 0.93, 0.21,
0.03, 0.03, 0.03
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -2534,10 +2531,10 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.15, 0.23, 0.22,
0.23, 0.22, 0.21, 0.22,
0.21, 0.21, 0.21, 0.19,
0.21, 0.2, 0.18, 0.17,
0.02, 0.02, 0.05, 0.07,
0.07, 0.07, 0.08, 0.07,
0.09, 0.08, 0.07, 0.07,
0.07, 0.08, 0.07, 0.03,
0.02, 0.02, 0.02
],
borderColor: '#ff6384',
@ -2555,22 +2552,23 @@ vus_max........................: 50 min=50 max=50
Iteration creation rate = **1/s**
```txt
checks.........................: 100.00% ✓ 10178 ✗ 0
data_received..................: 19 MB 209 kB/s
data_sent......................: 832 kB 9.2 kB/s
dropped_iterations.............: 10 0.111093/s
http_req_blocked...............: avg=173.81µs min=258ns med=1.17µs max=71.15ms p(90)=1.73µs p(95)=1.96µs
http_req_connecting............: avg=8.86µs min=0s med=0s max=16.7ms p(90)=0s p(95)=0s
http_req_duration..............: avg=319.5ms min=18.2ms med=215.07ms max=928.92ms p(90)=712.4ms p(95)=738.61ms
{ expected_response:true }...: avg=319.5ms min=18.2ms med=215.07ms max=928.92ms p(90)=712.4ms p(95)=738.61ms
http_req_failed................: 0.00% ✓ 0 ✗ 10178
http_req_receiving.............: avg=477µs min=24.11µs med=239.58µs max=210.58ms p(90)=793.3µs p(95)=1.14ms
http_req_sending...............: avg=186.15µs min=27.49µs med=133.48µs max=37.54ms p(90)=231.5µs p(95)=300.04µs
http_req_tls_handshaking.......: avg=159.15µs min=0s med=0s max=44.7ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=318.84ms min=0s med=214.49ms max=928.73ms p(90)=711.6ms p(95)=738.2ms
http_reqs......................: 10178 113.070736/s
vus............................: 50 min=1 max=50
vus_max........................: 50 min=50 max=50
checks.........................: 100.00% ✓ 94672 ✗ 0
data_received..................: 171 MB 2.2 MB/s
data_sent......................: 7.5 MB 95 kB/s
http_req_blocked...............: avg=17.77µs min=172ns med=626ns max=132.86ms p(90)=1.19µs p(95)=1.36µs
http_req_connecting............: avg=2.07µs min=0s med=0s max=62.8ms p(90)=0s p(95)=0s
http_req_duration..............: avg=14.36ms min=1.87ms med=10.33ms max=358.31ms p(90)=26.54ms p(95)=36.05ms
{ expected_response:true }...: avg=14.36ms min=1.87ms med=10.33ms max=358.31ms p(90)=26.54ms p(95)=36.05ms
http_req_failed................: 0.00% ✓ 0 ✗ 94672
http_req_receiving.............: avg=946.99µs min=15.83µs med=251.63µs max=213.84ms p(90)=1.58ms p(95)=3ms
http_req_sending...............: avg=180.14µs min=14.98µs med=75.49µs max=199.41ms p(90)=161.75µs p(95)=230.84µs
http_req_tls_handshaking.......: avg=14.39µs min=0s med=0s max=132.05ms p(90)=0s p(95)=0s
http_req_waiting...............: avg=13.23ms min=0s med=9.58ms max=278.53ms p(90)=24.63ms p(95)=33.11ms
http_reqs......................: 94672 1199.909891/s
iteration_duration.............: avg=22.69s min=10.8s med=23.88s max=30.11s p(90)=29.54s p(95)=29.85s
iterations.....................: 61 0.773138/s
vus............................: 5 min=1 max=29
vus_max........................: 50 min=50 max=50
```
{{< tabs >}}
@ -2581,14 +2579,15 @@ vus_max........................: 50 min=50 max=50
{
label: 'Req/s',
data: [
38, 65, 78, 76, 68, 78, 76, 79, 78, 70, 74, 79,
80, 75, 74, 79, 79, 80, 80, 73, 80, 81, 80, 80,
73, 82, 80, 80, 80, 72, 78, 100, 124, 133, 133, 142,
131, 130, 127, 135, 143, 142, 134, 144, 141, 140, 138, 129,
142, 139, 141, 137, 143, 139, 139, 138, 138, 129, 136, 132,
139, 136, 130, 135, 134, 142, 134, 123, 132, 135, 141, 136,
131, 137, 134, 137, 140, 122, 135, 133, 137, 130, 130, 132,
132, 135, 133, 125, 135, 39
91, 207, 385, 748, 820, 959, 1075, 964, 1238,
1212, 1320, 1289, 1154, 1361, 1365, 1307, 1346, 1115,
1328, 1461, 1238, 1417, 1237, 953, 1350, 1272, 1331,
1155, 1105, 1017, 1196, 1108, 815, 824, 1327, 1224,
1334, 1213, 1410, 1430, 1365, 1394, 1299, 1165, 1427,
1419, 1341, 1234, 1418, 957, 1035, 1028, 929, 880,
1414, 1491, 1388, 1226, 1510, 1408, 1366, 1571, 1048,
1439, 1486, 1360, 1401, 1216, 1392, 1408, 1486, 1440,
1260, 1312, 1341, 1271, 1250, 964, 628, 4
]
}
]
@ -2603,14 +2602,13 @@ vus_max........................: 50 min=50 max=50
{
label: 'VUs',
data: [
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
49, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
50, 50, 50, 50, 50, 50
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 10,
11, 11, 11, 11, 12, 12, 13, 13, 13, 13, 14, 14,
15, 15, 16, 15, 16, 16, 16, 17, 18, 19, 19, 20,
20, 20, 20, 21, 21, 22, 21, 22, 22, 23, 23, 24,
24, 25, 25, 25, 26, 27, 27, 27, 28, 28, 28, 28,
29, 27, 26, 26, 26, 23, 23, 22, 21, 20, 19, 18,
18, 15, 13, 10, 8, 5
]
}
]
@ -2621,15 +2619,13 @@ vus_max........................: 50 min=50 max=50
{
label: 'Duration (ms)',
data: [
59, 38, 46, 59, 83, 85, 98, 107, 124, 148, 156,
158, 169, 190, 211, 209, 222, 225, 246, 276, 271, 274,
290, 306, 333, 332, 347, 348, 364, 402, 394, 316, 271,
275, 267, 254, 275, 275, 327, 302, 288, 298, 299, 332,
319, 314, 346, 343, 366, 368, 352, 388, 318, 368, 362,
351, 361, 357, 399, 376, 364, 365, 359, 398, 380, 345,
362, 384, 403, 380, 352, 368, 355, 388, 383, 346, 367,
369, 400, 384, 348, 385, 366, 405, 383, 358, 377, 378,
394, 384
8, 8, 7, 5, 6, 6, 6, 8, 7, 8, 8, 8,
9, 8, 8, 9, 8, 11, 9, 9, 11, 10, 11, 15,
11, 12, 12, 14, 14, 15, 14, 15, 21, 22, 14, 16,
15, 17, 14, 14, 15, 15, 17, 19, 16, 16, 18, 19,
17, 26, 24, 26, 24, 33, 19, 17, 20, 24, 19, 20,
21, 18, 25, 18, 17, 18, 16, 19, 15, 15, 13, 13,
14, 12, 10, 10, 8, 7, 5, 9
]
}
]
@ -2643,11 +2639,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.03, 0.2, 0.55, 0.53,
0.54, 0.54, 0.55, 0.55,
0.45, 0.47, 0.49, 0.47,
0.49, 0.46, 0.49, 0.45,
0.48, 0.45, 0.45
0.03, 0.07, 0.37, 0.54,
0.58, 0.58, 0.55, 0.5,
0.52, 0.6, 0.6, 0.56,
0.55, 0.6, 0.6, 0.61,
0.58, 0.21, 0.03
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -2656,11 +2652,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.07, 0.24, 0.25,
0.25, 0.27, 0.26, 0.25,
0.23, 0.21, 0.23, 0.22,
0.25, 0.23, 0.23, 0.21,
0.22, 0.21, 0.22
0.02, 0.02, 0.07, 0.11,
0.12, 0.12, 0.12, 0.11,
0.12, 0.12, 0.12, 0.12,
0.12, 0.13, 0.13, 0.13,
0.11, 0.05, 0.02
],
borderColor: '#ff6384',
backgroundColor: '#ff6384',
@ -2674,11 +2670,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'User',
data: [
0.03, 0.07, 0.1, 0.11,
0.1, 0.08, 0.09, 0.11,
0.15, 0.15, 0.16, 0.16,
0.16, 0.15, 0.15, 0.16,
0.15, 0.16, 0.15
0.03, 0.03, 0.19, 0.27,
0.33, 0.33, 0.3, 0.3,
0.3, 0.33, 0.32, 0.33,
0.3, 0.35, 0.34, 0.35,
0.34, 0.19, 0.03
],
borderColor: '#4bc0c0',
backgroundColor: '#4bc0c0',
@ -2687,11 +2683,11 @@ vus_max........................: 50 min=50 max=50
{
label: 'System',
data: [
0.02, 0.07, 0.14, 0.14,
0.12, 0.12, 0.12, 0.13,
0.21, 0.21, 0.21, 0.19,
0.21, 0.21, 0.21, 0.2,
0.22, 0.23, 0.23
0.02, 0.02, 0.07, 0.09,
0.1, 0.1, 0.1, 0.09,
0.09, 0.11, 0.1, 0.09,
0.11, 0.11, 0.11, 0.1,
0.11, 0.06, 0.02
],
borderColor: '#ff6384',
backgroundColor: '#ff6384',
@ -3966,13 +3962,14 @@ Here are the final req/s results for each framework against PgSQL database.
borderColor: '#ffffff',
backgroundColor: '#ffffff',
data: [
50, 137, 158, 159, 158, 144, 155, 160, 159, 155,
149, 158, 157, 165, 150, 155, 158, 159, 161, 159,
143, 163, 161, 162, 162, 144, 158, 165, 160, 159,
154, 153, 156, 165, 159, 146, 156, 158, 159, 158,
148, 154, 161, 161, 163, 142, 155, 163, 163, 155,
150, 158, 159, 160, 159, 149, 157, 163, 158, 159,
154, 154, 163, 163, 157, 152, 160, 159, 62
122, 341, 348, 346, 359, 338, 361, 359, 345,
360, 330, 352, 361, 344, 359, 334, 362, 323,
346, 358, 335, 357, 352, 348, 358, 337, 359,
357, 345, 357, 339, 358, 350, 333, 355, 332,
359, 359, 349, 358, 333, 356, 359, 341, 352,
333, 355, 360, 344, 356, 340, 360, 360, 348,
355, 337, 346, 354, 345, 359, 337, 354, 341,
338, 179
]
},
{
@ -4058,15 +4055,15 @@ Here are the final req/s results for each framework against PgSQL database.
borderColor: '#ffffff',
backgroundColor: '#ffffff',
data: [
14, 37, 66, 114, 147, 159, 161, 176, 202, 203, 207,
213, 202, 222, 226, 229, 226, 217, 236, 243, 242, 225,
226, 242, 248, 253, 235, 230, 246, 254, 249, 243, 225,
251, 251, 252, 221, 229, 247, 255, 250, 241, 238, 252,
255, 259, 242, 234, 252, 253, 253, 240, 238, 255, 250,
253, 246, 240, 250, 255, 254, 245, 240, 252, 258, 254,
234, 234, 252, 251, 254, 250, 236, 248, 256, 260, 244,
234, 248, 254, 253, 244, 246, 253, 252, 254, 244, 239,
252, 258, 84
91, 207, 385, 748, 820, 959, 1075, 964, 1238,
1212, 1320, 1289, 1154, 1361, 1365, 1307, 1346, 1115,
1328, 1461, 1238, 1417, 1237, 953, 1350, 1272, 1331,
1155, 1105, 1017, 1196, 1108, 815, 824, 1327, 1224,
1334, 1213, 1410, 1430, 1365, 1394, 1299, 1165, 1427,
1419, 1341, 1234, 1418, 957, 1035, 1028, 929, 880,
1414, 1491, 1388, 1226, 1510, 1408, 1366, 1571, 1048,
1439, 1486, 1360, 1401, 1216, 1392, 1408, 1486, 1440,
1260, 1312, 1341, 1271, 1250, 964, 628, 4
]
},
{
@ -4142,7 +4139,7 @@ To resume, compiled languages have always a clear advantage when it comes to raw
Keep in mind that it shouldn't be the only criteria to choose a web framework. The DX is also very important, for exemple Laravel stays a very nice candidate in this regard.
In PHP, Laravel Octane seems the be the most performant solution, by skipping the framework bootstrap most of the time. Sadly Symfony seems to be not as good with FrankenPHP in choosen scenarios, don't know if it's a bug or a misconfiguration, let me know in comments if you have any suggestion.
In PHP, Laravel Octane seems the be the most performant solution, by skipping the framework bootstrap most of the time.
When it comes to compiled languages, I still personally prefer ASP.NET Core over Spring Boot because of the DX. The performance gap is negligible, and it hasn't this warmup Java feeling and keeps a raisonable memory footprint.