Compare commits
9 Commits
Author | SHA1 | Date | |
---|---|---|---|
71fc44acc5 | |||
36cd9266b3 | |||
21ff0825cc | |||
c7cdd65f87 | |||
3b2adea40f | |||
8e82c90734 | |||
ea7529c443 | |||
d83d53180d | |||
511fdbce7c |
File diff suppressed because it is too large
Load Diff
@ -18,7 +18,7 @@ I can develop proper API design following [**DDD / Hexa**](https://en.wikipedia.
|
||||
I encourage `TDD` or at least proper **integration tests** on any backend frameworks, following **AAA** aka *Arrange Act Assert* principle :
|
||||
|
||||
* `PHPUnit` or [`Pest`](https://pestphp.com/) for *PHP*
|
||||
* [`NUnit.net`](https://nunit.org/) or [`xUnit.net`](https://xunit.net/) with [`Fluent Assertions`](https://github.com/fluentassertions/fluentassertions) for *.NET Core*
|
||||
* [`NUnit.net`](https://nunit.org/) or [`xUnit.net`](https://xunit.net/) for *.NET Core*
|
||||
* `JUnit` with [`REST Assured`](https://rest-assured.io/) for *Spring Boot*
|
||||
* `Jest` and `pytest` on respective *NodeJS* end *Python* stacks
|
||||
|
||||
|
@ -8,7 +8,5 @@ Main packages involved :
|
||||
* [Fluent Validation](https://fluentvalidation.net/) for strongly typed validation
|
||||
* [dotnet-format](https://github.com/dotnet/format) as official formatter
|
||||
* [xUnit.net](https://xunit.net/) as framework test
|
||||
* [Fluent Assertions](https://fluentassertions.com/) for strongly typed assertions within the API
|
||||
* [Respawn](https://github.com/jbogard/Respawn) as for optimal integration tests isolation
|
||||
* [Bogus](https://github.com/bchavez/Bogus) for strongly typed fake data generator
|
||||
* [Bullseye](https://github.com/adamralph/bullseye) as a nice CLI publisher tool with dependency graph
|
||||
|
@ -9,7 +9,7 @@ We'll be comparing the read performance of 6 Web APIs frameworks, sharing the sa
|
||||
{{< /lead >}}
|
||||
|
||||
{{< alert >}}
|
||||
Update April 2024 for PHP: I replaced previous Apache results by new [FrankenPHP](https://frankenphp.dev/). Now PHP is back in the game, with huge performance increase thanks to worker mode.
|
||||
Outdated post, check the [lastest]({{< ref "/posts/23-web-api-benchmarks-2025" >}}) for updated benchs.
|
||||
{{< /alert >}}
|
||||
|
||||
This is not a basic synthetic benchmark, but a real world benchmark with DB data tests, and multiple scenarios. This post may be updated when new versions of frameworks will be released or any suggestions for performance related improvement in below commentary section.
|
||||
|
@ -12,10 +12,10 @@ This is a 2025 update from previous [2024 benchmark]({{< ref "/posts/22-web-api-
|
||||
|
||||
| Framework & Source code | Runtime | ORM |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | -------------- |
|
||||
| [Laravel 11](https://github.com/adr1enbe4udou1n/laravel-realworld-example-app) ([api](https://laravelrealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/laravel/latest)) | FrankenPHP 8.4 | Eloquent |
|
||||
| [Laravel 12](https://github.com/adr1enbe4udou1n/laravel-realworld-example-app) ([api](https://laravelrealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/laravel/latest)) | FrankenPHP 8.4 | Eloquent |
|
||||
| [Symfony 7.2](https://github.com/adr1enbe4udou1n/symfony-realworld-example-app) ([api](https://symfonyrealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/symfony/latest)) | FrankenPHP 8.4 | Doctrine |
|
||||
| [FastAPI](https://github.com/adr1enbe4udou1n/fastapi-realworld-example-app) ([api](https://fastapirealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/fastapi/latest)) | Python 3.13 | SQLAlchemy 2.0 |
|
||||
| [NestJS 10](https://github.com/adr1enbe4udou1n/nestjs-realworld-example-app) ([api](https://nestjsrealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/nestjs/latest)) | Node 22 | Prisma 6 |
|
||||
| [FastAPI](https://github.com/adr1enbe4udou1n/fastapi-realworld-example-app) ([api](https://fastapirealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/fastapi/latest)) | Python 3.13 (asyncio) | SQLAlchemy 2.0 (asyncio) |
|
||||
| [NestJS 11](https://github.com/adr1enbe4udou1n/nestjs-realworld-example-app) ([api](https://nestjsrealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/nestjs/latest)) | Node 22 | Prisma 6 |
|
||||
| [Spring Boot 3.4](https://github.com/adr1enbe4udou1n/spring-boot-realworld-example-app) ([api](https://springbootrealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/spring-boot/latest)) | Java 21 | Hibernate 6 |
|
||||
| [ASP.NET Core 9](https://github.com/adr1enbe4udou1n/aspnetcore-realworld-example-app) ([api](https://aspnetcorerealworld.okami101.io/api/) / [image](https://gitea.okami101.io/conduit/-/packages/container/aspnet-core/latest)) | .NET 9.0 | EF Core 9 |
|
||||
|
||||
@ -147,6 +147,7 @@ services:
|
||||
- DB_PASSWORD=okami
|
||||
- DB_DATABASE=conduit_fastapi
|
||||
- JWT_PASSPHRASE=c2b344e1-1a20-47fc-9aef-55b0c0d568a7
|
||||
- UVICORN_WORKERS=2
|
||||
networks:
|
||||
- postgres_db
|
||||
- traefik_public
|
||||
@ -155,9 +156,9 @@ services:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.fastapi.entrypoints=websecure
|
||||
- traefik.http.services.fastapi.loadbalancer.server.port=8000
|
||||
replicas: 4
|
||||
replicas: 2
|
||||
placement:
|
||||
max_replicas_per_node: 2
|
||||
max_replicas_per_node: 1
|
||||
constraints:
|
||||
- node.labels.run == true
|
||||
|
||||
@ -1029,30 +1030,28 @@ Huge gap in performance against Laravel Octane here, about twice better ! Withou
|
||||
|
||||
### FastAPI
|
||||
|
||||
As a side note here, uvicorn is limited to 1 CPU core, so I use 2 replicas on each worker to use all CPU cores.
|
||||
|
||||
#### FastAPI scenario 1
|
||||
|
||||
Iteration creation rate = **15/s**
|
||||
|
||||
```txt
|
||||
checks.........................: 100.00% 39678 out of 39678
|
||||
data_received..................: 321 MB 5.2 MB/s
|
||||
data_sent......................: 3.4 MB 55 kB/s
|
||||
dropped_iterations.............: 123 1.983368/s
|
||||
http_req_blocked...............: avg=23.83µs min=213ns med=799ns max=113.17ms p(90)=1.41µs p(95)=1.59µs
|
||||
http_req_connecting............: avg=1.42µs min=0s med=0s max=6.53ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=69.21ms min=6.41ms med=54.17ms max=382.34ms p(90)=142.86ms p(95)=166.33ms
|
||||
{ expected_response:true }...: avg=69.21ms min=6.41ms med=54.17ms max=382.34ms p(90)=142.86ms p(95)=166.33ms
|
||||
http_req_failed................: 0.00% 0 out of 39678
|
||||
http_req_receiving.............: avg=491.01µs min=23.44µs med=282.51µs max=20.46ms p(90)=1.01ms p(95)=1.6ms
|
||||
http_req_sending...............: avg=106.95µs min=17.61µs med=85.46µs max=20.9ms p(90)=155.94µs p(95)=189.16µs
|
||||
http_req_tls_handshaking.......: avg=18.91µs min=0s med=0s max=34.33ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=68.62ms min=6.23ms med=53.56ms max=381.34ms p(90)=142.08ms p(95)=165.56ms
|
||||
http_reqs......................: 39678 639.805458/s
|
||||
iteration_duration.............: avg=3.56s min=1s med=3.68s max=5.11s p(90)=4.22s p(95)=4.38s
|
||||
iterations.....................: 778 12.545205/s
|
||||
vus............................: 3 min=3 max=50
|
||||
checks.........................: 100.00% 28764 out of 28764
|
||||
data_received..................: 234 MB 3.7 MB/s
|
||||
data_sent......................: 2.6 MB 41 kB/s
|
||||
dropped_iterations.............: 336 5.300365/s
|
||||
http_req_blocked...............: avg=39.99µs min=242ns med=669ns max=68.16ms p(90)=1.14µs p(95)=1.32µs
|
||||
http_req_connecting............: avg=1.66µs min=0s med=0s max=3.75ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=103.18ms min=6.22ms med=101.32ms max=452.09ms p(90)=139.92ms p(95)=157.15ms
|
||||
{ expected_response:true }...: avg=103.18ms min=6.22ms med=101.32ms max=452.09ms p(90)=139.92ms p(95)=157.15ms
|
||||
http_req_failed................: 0.00% 0 out of 28764
|
||||
http_req_receiving.............: avg=460.02µs min=28.21µs med=334.44µs max=18.75ms p(90)=862.97µs p(95)=1.19ms
|
||||
http_req_sending...............: avg=93.58µs min=21.19µs med=79.76µs max=3.26ms p(90)=141.54µs p(95)=167.69µs
|
||||
http_req_tls_handshaking.......: avg=35.6µs min=0s med=0s max=28.74ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=102.63ms min=5.98ms med=100.76ms max=451.57ms p(90)=139.32ms p(95)=156.56ms
|
||||
http_reqs......................: 28764 453.749133/s
|
||||
iteration_duration.............: avg=5.28s min=1.61s med=5.38s max=6.19s p(90)=5.71s p(95)=5.79s
|
||||
iterations.....................: 564 8.897042/s
|
||||
vus............................: 17 min=15 max=50
|
||||
vus_max........................: 50 min=50 max=50
|
||||
```
|
||||
|
||||
@ -1064,13 +1063,13 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Req/s',
|
||||
data: [
|
||||
205, 686, 625, 657, 643, 684, 625, 652, 606,
|
||||
656, 610, 662, 672, 687, 647, 650, 636, 663,
|
||||
665, 617, 600, 621, 637, 655, 628, 681, 649,
|
||||
637, 662, 568, 669, 667, 630, 625, 630, 685,
|
||||
654, 647, 667, 631, 618, 656, 614, 695, 650,
|
||||
659, 629, 638, 646, 609, 642, 661, 647, 677,
|
||||
601, 662, 665, 608, 671, 628, 632, 629, 150
|
||||
50, 371, 331, 391, 475, 450, 464, 464, 467, 450,
|
||||
447, 467, 467, 455, 451, 458, 463, 485, 470, 476,
|
||||
449, 481, 485, 461, 476, 442, 455, 474, 454, 456,
|
||||
439, 478, 472, 436, 473, 453, 463, 471, 456, 455,
|
||||
439, 470, 456, 473, 465, 459, 468, 471, 475, 474,
|
||||
444, 484, 469, 466, 468, 448, 477, 449, 443, 482,
|
||||
444, 452, 432, 374, 1
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -1085,12 +1084,12 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'VUs',
|
||||
data: [
|
||||
15, 18, 22, 30, 31, 36, 37, 41, 49, 50, 49, 50,
|
||||
47, 48, 47, 48, 49, 47, 49, 44, 47, 48, 48, 50,
|
||||
46, 46, 45, 50, 48, 47, 45, 50, 45, 49, 45, 45,
|
||||
50, 47, 48, 50, 47, 50, 46, 47, 49, 47, 50, 47,
|
||||
50, 46, 49, 46, 47, 49, 48, 49, 47, 47, 48, 49,
|
||||
38, 3
|
||||
15, 27, 39, 50, 50, 50, 49, 48, 48, 50, 50, 50,
|
||||
48, 46, 49, 50, 48, 49, 49, 50, 50, 50, 49, 48,
|
||||
47, 48, 50, 47, 48, 50, 47, 50, 50, 48, 46, 49,
|
||||
50, 50, 50, 49, 48, 50, 48, 49, 50, 50, 49, 44,
|
||||
49, 49, 49, 48, 50, 48, 50, 50, 47, 50, 49, 50,
|
||||
45, 37, 17
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -1101,12 +1100,13 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Duration (ms)',
|
||||
data: [
|
||||
19, 22, 29, 35, 44, 46, 57, 60, 71, 73, 80, 73,
|
||||
73, 67, 76, 74, 73, 73, 70, 80, 76, 77, 76, 74,
|
||||
77, 65, 70, 75, 73, 84, 68, 71, 80, 74, 79, 64,
|
||||
74, 77, 69, 77, 79, 71, 78, 67, 75, 72, 77, 76,
|
||||
74, 78, 71, 73, 74, 70, 78, 76, 71, 75, 71, 79,
|
||||
71, 49, 17
|
||||
21, 34, 77, 93, 102, 110, 107, 104, 105, 109,
|
||||
112, 106, 105, 103, 106, 107, 106, 103, 103, 102,
|
||||
108, 103, 102, 107, 103, 109, 106, 106, 107, 108,
|
||||
112, 103, 103, 111, 105, 107, 105, 104, 107, 107,
|
||||
115, 103, 108, 103, 107, 108, 105, 102, 101, 104,
|
||||
112, 102, 105, 104, 105, 110, 104, 106, 108, 105,
|
||||
111, 102, 85, 47, 8
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -1120,11 +1120,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.01, 0.48, 0.69, 0.7,
|
||||
0.69, 0.7, 0.7, 0.69,
|
||||
0.71, 0.69, 0.68, 0.69,
|
||||
0.69, 0.41, 0.01, 0.02,
|
||||
0.01, 0.01
|
||||
0.02, 0.02, 0.1, 0.74,
|
||||
0.78, 0.77, 0.79, 0.79,
|
||||
0.78, 0.78, 0.78, 0.78,
|
||||
0.78, 0.77, 0.78, 0.36,
|
||||
0.02, 0.02, 0.02
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -1133,11 +1133,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.01, 0.16, 0.26, 0.26,
|
||||
0.24, 0.24, 0.25, 0.25,
|
||||
0.26, 0.25, 0.24, 0.24,
|
||||
0.24, 0.16, 0.01, 0.02,
|
||||
0.01, 0.01
|
||||
0.01, 0.01, 0.04, 0.2,
|
||||
0.21, 0.21, 0.21, 0.2,
|
||||
0.21, 0.21, 0.21, 0.21,
|
||||
0.21, 0.22, 0.21, 0.1,
|
||||
0.02, 0.01, 0.01
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -1151,11 +1151,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.02, 0.11, 0.46, 0.49,
|
||||
0.48, 0.5, 0.5, 0.49,
|
||||
0.48, 0.48, 0.47, 0.49,
|
||||
0.48, 0.49, 0.05, 0.02,
|
||||
0.02, 0.02
|
||||
0.02, 0.02, 0.37, 0.5,
|
||||
0.5, 0.49, 0.48, 0.5,
|
||||
0.49, 0.5, 0.49, 0.5,
|
||||
0.49, 0.5, 0.41, 0.02,
|
||||
0.03, 0.02, 0.02
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -1164,11 +1164,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.02, 0.06, 0.24, 0.35,
|
||||
0.28, 0.35, 0.33, 0.3,
|
||||
0.28, 0.32, 0.27, 0.34,
|
||||
0.29, 0.3, 0.04, 0.02,
|
||||
0.02, 0.02
|
||||
0.02, 0.02, 0.33, 0.34,
|
||||
0.34, 0.33, 0.32, 0.35,
|
||||
0.34, 0.35, 0.36, 0.33,
|
||||
0.32, 0.36, 0.33, 0.02,
|
||||
0.02, 0.02, 0.02
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -1185,23 +1185,23 @@ vus_max........................: 50 min=50 max=50
|
||||
Iteration creation rate = **2/s**
|
||||
|
||||
```txt
|
||||
checks.........................: 100.00% 82414 out of 82414
|
||||
data_received..................: 164 MB 1.8 MB/s
|
||||
data_sent......................: 6.1 MB 68 kB/s
|
||||
dropped_iterations.............: 64 0.711058/s
|
||||
http_req_blocked...............: avg=13.71µs min=208ns med=783ns max=143.23ms p(90)=1.39µs p(95)=1.56µs
|
||||
http_req_connecting............: avg=1.28µs min=0s med=0s max=25.89ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=43.46ms min=3.99ms med=24.29ms max=315.4ms p(90)=108.49ms p(95)=129.33ms
|
||||
{ expected_response:true }...: avg=43.46ms min=3.99ms med=24.29ms max=315.4ms p(90)=108.49ms p(95)=129.33ms
|
||||
http_req_failed................: 0.00% 0 out of 82414
|
||||
http_req_receiving.............: avg=205.46µs min=16.8µs med=103.34µs max=23.42ms p(90)=394.08µs p(95)=591.95µs
|
||||
http_req_sending...............: avg=94.88µs min=17.56µs med=78.81µs max=14.63ms p(90)=143.76µs p(95)=171.26µs
|
||||
http_req_tls_handshaking.......: avg=9.75µs min=0s med=0s max=29.89ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=43.16ms min=23.62µs med=23.97ms max=315.14ms p(90)=108.17ms p(95)=129.04ms
|
||||
http_reqs......................: 82414 915.642582/s
|
||||
iteration_duration.............: avg=1m5s min=44.88s med=1m10s max=1m14s p(90)=1m13s p(95)=1m13s
|
||||
iterations.....................: 36 0.39997/s
|
||||
vus............................: 21 min=2 max=50
|
||||
checks.........................: 100.00% 72770 out of 72770
|
||||
data_received..................: 145 MB 1.6 MB/s
|
||||
data_sent......................: 5.5 MB 61 kB/s
|
||||
dropped_iterations.............: 66 0.733176/s
|
||||
http_req_blocked...............: avg=14.03µs min=198ns med=645ns max=144.52ms p(90)=1.11µs p(95)=1.27µs
|
||||
http_req_connecting............: avg=629ns min=0s med=0s max=5.17ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=50.94ms min=3.78ms med=38.97ms max=384.02ms p(90)=107.46ms p(95)=136.98ms
|
||||
{ expected_response:true }...: avg=50.94ms min=3.78ms med=38.97ms max=384.02ms p(90)=107.46ms p(95)=136.98ms
|
||||
http_req_failed................: 0.00% 0 out of 72770
|
||||
http_req_receiving.............: avg=200.09µs min=18.28µs med=107.44µs max=18.54ms p(90)=399.04µs p(95)=632µs
|
||||
http_req_sending...............: avg=86.57µs min=16.71µs med=73.65µs max=13.95ms p(90)=132.89µs p(95)=158.51µs
|
||||
http_req_tls_handshaking.......: avg=10.86µs min=0s med=0s max=28.74ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=50.66ms min=3.64ms med=38.7ms max=383.81ms p(90)=107.11ms p(95)=136.61ms
|
||||
http_reqs......................: 72770 808.381614/s
|
||||
iteration_duration.............: avg=1m6s min=49.42s med=1m8s max=1m19s p(90)=1m18s p(95)=1m18s
|
||||
iterations.....................: 18 0.199957/s
|
||||
vus............................: 37 min=2 max=50
|
||||
vus_max........................: 50 min=50 max=50
|
||||
```
|
||||
|
||||
@ -1213,15 +1213,14 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Req/s',
|
||||
data: [
|
||||
12, 155, 362, 681, 799, 914, 973, 975, 984, 928, 959,
|
||||
964, 934, 975, 874, 924, 883, 908, 931, 888, 983, 935,
|
||||
967, 959, 898, 942, 939, 935, 933, 904, 926, 909, 911,
|
||||
904, 945, 929, 990, 962, 973, 896, 998, 962, 930, 983,
|
||||
891, 1007, 944, 925, 983, 952, 938, 984, 939, 936, 872,
|
||||
959, 996, 983, 968, 945, 909, 964, 973, 897, 921, 996,
|
||||
953, 986, 941, 929, 942, 966, 880, 943, 901, 956, 925,
|
||||
944, 967, 899, 935, 937, 924, 960, 899, 999, 917, 891,
|
||||
880, 884, 538
|
||||
734, 921, 803, 822, 870, 809, 859, 751, 834, 825,
|
||||
786, 779, 811, 928, 869, 802, 802, 802, 832, 802,
|
||||
798, 824, 768, 845, 825, 762, 860, 758, 812, 813,
|
||||
808, 783, 772, 797, 831, 835, 799, 781, 844, 824,
|
||||
787, 801, 769, 819, 799, 774, 837, 776, 837, 826,
|
||||
821, 776, 791, 816, 838, 792, 900, 795, 815, 807,
|
||||
781, 819, 729, 848, 861, 839, 872, 762, 796, 902,
|
||||
790, 791, 791, 830, 815, 835, 832, 583
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -1236,14 +1235,13 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'VUs',
|
||||
data: [
|
||||
2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24,
|
||||
26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48,
|
||||
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, 49, 49, 50, 50, 50, 50, 50, 50,
|
||||
49, 49, 49, 49, 48, 47, 46, 46, 46, 45, 45, 44,
|
||||
43, 43, 43, 42, 41, 40, 40, 40, 38, 36, 35, 34,
|
||||
32, 30, 29, 26, 25, 21
|
||||
50, 49, 50, 50, 50, 50, 50, 50, 50, 50, 50, 49,
|
||||
50, 50, 50, 49, 49, 48, 48, 48, 48, 47, 47, 46,
|
||||
46, 46, 45, 44, 44, 44, 44, 43, 43, 42, 42, 40,
|
||||
40, 39, 38, 37, 37, 37
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -1254,14 +1252,13 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Duration (ms)',
|
||||
data: [
|
||||
20, 14, 12, 9, 10, 11, 12, 14, 16, 19, 21, 23,
|
||||
26, 27, 32, 32, 36, 38, 38, 44, 41, 45, 46, 47,
|
||||
54, 52, 51, 55, 54, 55, 54, 55, 54, 55, 53, 54,
|
||||
49, 53, 51, 56, 50, 52, 53, 51, 55, 50, 53, 53,
|
||||
49, 53, 53, 50, 53, 53, 57, 50, 52, 49, 52, 54,
|
||||
54, 52, 50, 53, 54, 49, 49, 47, 49, 49, 47, 45,
|
||||
50, 47, 47, 45, 44, 44, 41, 45, 42, 41, 39, 36,
|
||||
38, 31, 33, 32, 31, 28, 24
|
||||
29, 30, 37, 38, 39, 44, 43, 53, 49, 53, 58, 61,
|
||||
61, 54, 57, 62, 62, 62, 61, 62, 61, 61, 65, 59,
|
||||
60, 66, 59, 65, 61, 62, 62, 63, 65, 63, 60, 60,
|
||||
61, 63, 59, 60, 62, 64, 65, 60, 63, 65, 59, 64,
|
||||
59, 60, 61, 62, 62, 58, 59, 60, 53, 60, 57, 58,
|
||||
57, 57, 61, 53, 50, 53, 51, 56, 54, 46, 54, 50,
|
||||
51, 48, 47, 45, 45, 50
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -1275,11 +1272,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.01, 0.24, 0.65, 0.68,
|
||||
0.66, 0.69, 0.68, 0.68,
|
||||
0.68, 0.69, 0.69, 0.71,
|
||||
0.69, 0.68, 0.7, 0.7,
|
||||
0.69, 0.68, 0.65
|
||||
0.51, 0.71, 0.76, 0.7,
|
||||
0.72, 0.72, 0.74, 0.77,
|
||||
0.72, 0.73, 0.75, 0.74,
|
||||
0.73, 0.78, 0.77, 0.66,
|
||||
0.76, 0.6, 0.02
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -1288,11 +1285,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.01, 0.08, 0.23, 0.26,
|
||||
0.25, 0.28, 0.27, 0.25,
|
||||
0.25, 0.25, 0.25, 0.27,
|
||||
0.28, 0.26, 0.27, 0.28,
|
||||
0.27, 0.24, 0.24
|
||||
0.15, 0.2, 0.2, 0.18,
|
||||
0.19, 0.18, 0.19, 0.2,
|
||||
0.19, 0.19, 0.19, 0.19,
|
||||
0.19, 0.19, 0.18, 0.17,
|
||||
0.2, 0.16, 0.01
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -1306,11 +1303,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.02, 0.03, 0.24, 0.24,
|
||||
0.25, 0.26, 0.28, 0.28,
|
||||
0.29, 0.28, 0.29, 0.28,
|
||||
0.27, 0.28, 0.29, 0.28,
|
||||
0.28, 0.27, 0.28
|
||||
0.42, 0.47, 0.48, 0.51,
|
||||
0.51, 0.52, 0.49, 0.52,
|
||||
0.52, 0.52, 0.51, 0.53,
|
||||
0.51, 0.52, 0.49, 0.5,
|
||||
0.52, 0.12, 0.03
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -1319,11 +1316,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.02, 0.02, 0.13, 0.16,
|
||||
0.2, 0.23, 0.23, 0.24,
|
||||
0.26, 0.26, 0.26, 0.23,
|
||||
0.23, 0.25, 0.24, 0.25,
|
||||
0.25, 0.23, 0.23
|
||||
0.15, 0.29, 0.37, 0.44,
|
||||
0.43, 0.46, 0.42, 0.47,
|
||||
0.47, 0.45, 0.46, 0.46,
|
||||
0.41, 0.46, 0.39, 0.39,
|
||||
0.42, 0.11, 0.02
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -1953,23 +1950,23 @@ vus_max........................: 50 min=50 max=50
|
||||
Iteration creation rate = **30/s**
|
||||
|
||||
```txt
|
||||
checks.........................: 100.00% 60537 out of 60537
|
||||
data_received..................: 1.4 GB 22 MB/s
|
||||
data_sent......................: 5.4 MB 88 kB/s
|
||||
dropped_iterations.............: 614 10.010036/s
|
||||
http_req_blocked...............: avg=18.21µs min=164ns med=643ns max=119.65ms p(90)=1.2µs p(95)=1.39µs
|
||||
http_req_connecting............: avg=1.19µs min=0s med=0s max=7.21ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=47.41ms min=3.21ms med=47.19ms max=150.24ms p(90)=64.58ms p(95)=70.42ms
|
||||
{ expected_response:true }...: avg=47.41ms min=3.21ms med=47.19ms max=150.24ms p(90)=64.58ms p(95)=70.42ms
|
||||
http_req_failed................: 0.00% 0 out of 60537
|
||||
http_req_receiving.............: avg=1.27ms min=21.28µs med=577.04µs max=53.67ms p(90)=2.93ms p(95)=4.89ms
|
||||
http_req_sending...............: avg=115.28µs min=14.99µs med=72.14µs max=30.87ms p(90)=151.69µs p(95)=216.28µs
|
||||
http_req_tls_handshaking.......: avg=14.34µs min=0s med=0s max=52.71ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=46.02ms min=2.92ms med=46.04ms max=148.92ms p(90)=62.52ms p(95)=67.86ms
|
||||
http_reqs......................: 60537 986.934156/s
|
||||
iteration_duration.............: avg=2.48s min=1s med=2.51s max=2.79s p(90)=2.64s p(95)=2.68s
|
||||
iterations.....................: 1187 19.35165/s
|
||||
vus............................: 24 min=24 max=50
|
||||
checks.........................: 100.00% 81702 out of 81702
|
||||
data_received..................: 1.9 GB 31 MB/s
|
||||
data_sent......................: 7.3 MB 120 kB/s
|
||||
dropped_iterations.............: 199 3.262028/s
|
||||
http_req_blocked...............: avg=12.12µs min=184ns med=633ns max=55.88ms p(90)=1.14µs p(95)=1.32µs
|
||||
http_req_connecting............: avg=704ns min=0s med=0s max=7.92ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=34.17ms min=2.66ms med=33.04ms max=186.52ms p(90)=49.32ms p(95)=56.04ms
|
||||
{ expected_response:true }...: avg=34.17ms min=2.66ms med=33.04ms max=186.52ms p(90)=49.32ms p(95)=56.04ms
|
||||
http_req_failed................: 0.00% 0 out of 81702
|
||||
http_req_receiving.............: avg=1.76ms min=16.84µs med=876.33µs max=42.4ms p(90)=4.11ms p(95)=6.3ms
|
||||
http_req_sending...............: avg=120.32µs min=18.4µs med=75.84µs max=14.69ms p(90)=167.92µs p(95)=246.59µs
|
||||
http_req_tls_handshaking.......: avg=9.86µs min=0s med=0s max=30.66ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=32.28ms min=1.77ms med=31.33ms max=185.44ms p(90)=46.46ms p(95)=52.38ms
|
||||
http_reqs......................: 81702 1339.267336/s
|
||||
iteration_duration.............: avg=1.79s min=655.17ms med=1.81s max=2.11s p(90)=1.93s p(95)=1.96s
|
||||
iterations.....................: 1602 26.260144/s
|
||||
vus............................: 1 min=1 max=50
|
||||
vus_max........................: 50 min=50 max=50
|
||||
```
|
||||
|
||||
@ -1981,14 +1978,15 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Req/s',
|
||||
data: [
|
||||
500, 987, 969, 985, 980, 1036, 987, 1003,
|
||||
980, 965, 1017, 988, 1013, 948, 961, 1024,
|
||||
989, 1018, 996, 981, 1016, 993, 981, 987,
|
||||
964, 1020, 985, 1018, 997, 972, 1010, 994,
|
||||
998, 1001, 970, 1028, 1021, 1000, 1013, 975,
|
||||
1013, 965, 993, 972, 960, 1029, 975, 1005,
|
||||
998, 962, 1024, 991, 1001, 981, 962, 1015,
|
||||
985, 993, 1001, 968, 1008, 466
|
||||
31, 1147, 1280, 1276, 1368, 1314, 1416,
|
||||
1396, 1246, 1394, 1362, 1398, 1406, 1312,
|
||||
1389, 1317, 1305, 1349, 1287, 1352, 1345,
|
||||
1361, 1368, 1293, 1371, 1344, 1364, 1370,
|
||||
1311, 1324, 1312, 1373, 1343, 1326, 1374,
|
||||
1325, 1397, 1376, 1328, 1391, 1323, 1386,
|
||||
1368, 1318, 1390, 1328, 1404, 1350, 1291,
|
||||
1387, 1328, 1380, 1378, 1307, 1360, 1297,
|
||||
1396, 1367, 1309, 1377, 1302, 1015
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -2003,12 +2001,12 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'VUs',
|
||||
data: [
|
||||
30, 46, 50, 50, 50, 50, 49, 50, 50, 49, 49, 46,
|
||||
50, 50, 47, 50, 49, 50, 49, 48, 50, 49, 50, 50,
|
||||
48, 50, 49, 49, 48, 50, 50, 48, 50, 50, 49, 49,
|
||||
49, 49, 49, 50, 49, 50, 50, 50, 48, 47, 50, 50,
|
||||
50, 48, 49, 50, 49, 50, 49, 50, 50, 49, 50, 50,
|
||||
24
|
||||
22, 32, 40, 46, 46, 50, 47, 48, 48, 47, 48, 45,
|
||||
48, 49, 47, 49, 47, 49, 49, 47, 50, 50, 49, 47,
|
||||
48, 49, 48, 48, 50, 46, 49, 48, 49, 48, 47, 48,
|
||||
47, 49, 47, 50, 47, 49, 50, 47, 48, 48, 48, 48,
|
||||
47, 48, 50, 48, 49, 47, 48, 47, 48, 50, 46, 47,
|
||||
1
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -2019,12 +2017,12 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Duration (ms)',
|
||||
data: [
|
||||
16, 31, 49, 49, 48, 47, 48, 48, 50, 48, 47, 49,
|
||||
47, 51, 50, 47, 48, 48, 48, 49, 47, 49, 49, 49,
|
||||
49, 47, 48, 48, 48, 49, 46, 49, 48, 47, 50, 46,
|
||||
47, 48, 48, 49, 47, 49, 48, 49, 51, 47, 48, 48,
|
||||
47, 50, 48, 48, 48, 49, 50, 47, 49, 48, 48, 49,
|
||||
42, 22
|
||||
16, 15, 22, 29, 34, 35, 33, 34, 38, 34, 34, 34,
|
||||
33, 36, 34, 34, 37, 35, 37, 35, 35, 35, 34, 37,
|
||||
34, 34, 35, 35, 36, 35, 36, 35, 35, 37, 34, 35,
|
||||
34, 35, 36, 34, 35, 35, 33, 37, 33, 35, 34, 35,
|
||||
37, 34, 35, 35, 33, 37, 35, 36, 34, 34, 36, 34,
|
||||
36, 21
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -2038,11 +2036,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.02, 0.1, 0.6, 0.58,
|
||||
0.58, 0.58, 0.57, 0.58,
|
||||
0.6, 0.58, 0.57, 0.58,
|
||||
0.57, 0.57, 0.04, 0.01,
|
||||
0.02, 0.02
|
||||
0.02, 0.02, 0.6, 0.66,
|
||||
0.66, 0.63, 0.64, 0.63,
|
||||
0.65, 0.64, 0.64, 0.64,
|
||||
0.65, 0.64, 0.17, 0.02,
|
||||
0.01, 0.02, 0.02
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -2051,11 +2049,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.01, 0.05, 0.25, 0.24,
|
||||
0.23, 0.24, 0.25, 0.24,
|
||||
0.24, 0.24, 0.24, 0.24,
|
||||
0.25, 0.24, 0.03, 0.01,
|
||||
0.02, 0.02
|
||||
0.02, 0.01, 0.27, 0.29,
|
||||
0.29, 0.28, 0.28, 0.29,
|
||||
0.28, 0.28, 0.28, 0.29,
|
||||
0.28, 0.28, 0.08, 0.01,
|
||||
0.01, 0.01, 0.01
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -2069,11 +2067,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.01, 0.02, 0.5, 0.77,
|
||||
0.76, 0.76, 0.76, 0.76,
|
||||
0.77, 0.77, 0.75, 0.76,
|
||||
0.76, 0.77, 0.42, 0.02,
|
||||
0.02, 0.02, 0.02
|
||||
0.02, 0.02, 0.58, 0.71,
|
||||
0.73, 0.74, 0.73, 0.74,
|
||||
0.73, 0.75, 0.74, 0.74,
|
||||
0.74, 0.74, 0.24, 0.02,
|
||||
0.01, 0.02, 0.02
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -2082,11 +2080,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.02, 0.02, 0.17, 0.23,
|
||||
0.23, 0.24, 0.24, 0.23,
|
||||
0.23, 0.23, 0.23, 0.23,
|
||||
0.23, 0.23, 0.14, 0.02,
|
||||
0.02, 0.02, 0.02
|
||||
0.02, 0.02, 0.19, 0.24,
|
||||
0.23, 0.22, 0.23, 0.23,
|
||||
0.23, 0.22, 0.23, 0.22,
|
||||
0.22, 0.22, 0.08, 0.01,
|
||||
0.02, 0.02, 0.01
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -2103,23 +2101,23 @@ vus_max........................: 50 min=50 max=50
|
||||
Iteration creation rate = **10/s**
|
||||
|
||||
```txt
|
||||
checks.........................: 100.00% 155200 out of 155200
|
||||
data_received..................: 930 MB 14 MB/s
|
||||
data_sent......................: 14 MB 206 kB/s
|
||||
dropped_iterations.............: 500 7.429243/s
|
||||
http_req_blocked...............: avg=7.19µs min=170ns med=579ns max=70.57ms p(90)=1.14µs p(95)=1.32µs
|
||||
http_req_connecting............: avg=367ns min=0s med=0s max=4.55ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=20.06ms min=1.85ms med=17.93ms max=227.21ms p(90)=35.09ms p(95)=41.47ms
|
||||
{ expected_response:true }...: avg=20.06ms min=1.85ms med=17.93ms max=227.21ms p(90)=35.09ms p(95)=41.47ms
|
||||
http_req_failed................: 0.00% 0 out of 155200
|
||||
http_req_receiving.............: avg=1.3ms min=16.13µs med=566.94µs max=41.66ms p(90)=3.1ms p(95)=5.12ms
|
||||
http_req_sending...............: avg=94.15µs min=11.56µs med=62.76µs max=35.14ms p(90)=130.16µs p(95)=171.55µs
|
||||
http_req_tls_handshaking.......: avg=5.61µs min=0s med=0s max=52.65ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=18.66ms min=0s med=16.5ms max=226.18ms p(90)=33.14ms p(95)=39.31ms
|
||||
http_reqs......................: 155200 2306.036927/s
|
||||
iteration_duration.............: avg=31.5s min=28.79s med=31.76s max=33.25s p(90)=32.83s p(95)=32.95s
|
||||
iterations.....................: 100 1.485849/s
|
||||
vus............................: 12 min=10 max=50
|
||||
checks.........................: 100.00% 169168 out of 169168
|
||||
data_received..................: 1.0 GB 14 MB/s
|
||||
data_sent......................: 15 MB 213 kB/s
|
||||
dropped_iterations.............: 492 6.923966/s
|
||||
http_req_blocked...............: avg=6.5µs min=201ns med=682ns max=49.52ms p(90)=1.15µs p(95)=1.32µs
|
||||
http_req_connecting............: avg=296ns min=0s med=0s max=3.92ms p(90)=0s p(95)=0s
|
||||
http_req_duration..............: avg=18.09ms min=1.68ms med=16.09ms max=138.4ms p(90)=32.62ms p(95)=38.84ms
|
||||
{ expected_response:true }...: avg=18.09ms min=1.68ms med=16.09ms max=138.4ms p(90)=32.62ms p(95)=38.84ms
|
||||
http_req_failed................: 0.00% 0 out of 169168
|
||||
http_req_receiving.............: avg=1.11ms min=16.62µs med=543.46µs max=35.08ms p(90)=2.62ms p(95)=4.16ms
|
||||
http_req_sending...............: avg=99.48µs min=11.38µs med=75.49µs max=15.01ms p(90)=149.69µs p(95)=200.71µs
|
||||
http_req_tls_handshaking.......: avg=5.01µs min=0s med=0s max=25.8ms p(90)=0s p(95)=0s
|
||||
http_req_waiting...............: avg=16.88ms min=0s med=14.83ms max=136.41ms p(90)=30.95ms p(95)=37.04ms
|
||||
http_reqs......................: 169168 2380.718287/s
|
||||
iteration_duration.............: avg=28.45s min=11.15s med=30.18s max=31.36s p(90)=31.06s p(95)=31.12s
|
||||
iterations.....................: 109 1.533968/s
|
||||
vus............................: 1 min=1 max=50
|
||||
vus_max........................: 50 min=50 max=50
|
||||
```
|
||||
|
||||
@ -2131,15 +2129,15 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Req/s',
|
||||
data: [
|
||||
180, 1475, 1881, 1960, 1863, 2200, 2252, 2434,
|
||||
2455, 2328, 2416, 2404, 2395, 2326, 2170, 2357,
|
||||
2314, 2513, 2381, 2355, 2438, 2318, 2496, 2455,
|
||||
2375, 2358, 2309, 2498, 2439, 2409, 2293, 2370,
|
||||
2363, 2383, 2290, 2339, 2316, 2460, 2386, 2413,
|
||||
2263, 2320, 2508, 2199, 2323, 2374, 2273, 2441,
|
||||
2319, 2344, 2328, 2328, 2507, 2430, 2307, 2431,
|
||||
2291, 2380, 2494, 2388, 2265, 2362, 2418, 2456,
|
||||
2245, 2323, 2199, 1317
|
||||
13, 1111, 1992, 2356, 2484, 2319, 2500, 2480,
|
||||
2551, 2589, 2489, 2593, 2499, 2624, 2531, 2438,
|
||||
2553, 2400, 2585, 2524, 2341, 2473, 2479, 2630,
|
||||
2549, 2467, 2519, 2482, 2583, 2572, 2393, 2439,
|
||||
2488, 2566, 2547, 2415, 2498, 2457, 2574, 2531,
|
||||
2472, 2537, 2494, 2514, 2584, 2425, 2493, 2421,
|
||||
2564, 2558, 2320, 2435, 2471, 2537, 2592, 2446,
|
||||
2566, 2471, 2597, 2565, 2379, 2464, 2391, 2533,
|
||||
2415, 1875, 1710, 1707, 1773, 1749, 1688, 788
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -2156,10 +2154,10 @@ vus_max........................: 50 min=50 max=50
|
||||
data: [
|
||||
10, 20, 30, 40, 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, 49, 50, 48,
|
||||
47, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
|
||||
50, 50, 50, 50, 50, 48, 49, 49, 50, 49, 49, 50,
|
||||
50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
|
||||
50, 49, 44, 40, 34, 27, 12
|
||||
50, 50, 50, 50, 50, 50, 50, 50, 50, 49, 49, 50,
|
||||
46, 40, 35, 27, 9, 9, 9, 9, 9, 9, 1
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -2170,12 +2168,12 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'Duration (ms)',
|
||||
data: [
|
||||
8, 7, 11, 15, 21, 22, 22, 20, 20, 21, 20, 21,
|
||||
20, 21, 23, 21, 21, 20, 21, 21, 20, 21, 20, 20,
|
||||
21, 21, 21, 20, 20, 21, 21, 21, 21, 20, 21, 21,
|
||||
21, 19, 21, 20, 22, 21, 20, 22, 21, 21, 22, 20,
|
||||
21, 21, 21, 21, 20, 20, 21, 20, 22, 21, 20, 21,
|
||||
22, 21, 20, 18, 17, 14, 12, 7
|
||||
32, 7, 9, 12, 15, 20, 20, 20, 20, 19, 20, 19,
|
||||
19, 19, 19, 20, 19, 20, 19, 20, 21, 20, 20, 19,
|
||||
19, 20, 20, 20, 19, 19, 21, 20, 20, 19, 19, 20,
|
||||
19, 20, 19, 20, 20, 20, 20, 20, 19, 20, 20, 20,
|
||||
19, 19, 21, 20, 20, 20, 19, 20, 19, 20, 19, 19,
|
||||
21, 19, 17, 14, 12, 6, 5, 5, 5, 5, 5, 5
|
||||
]
|
||||
}
|
||||
]
|
||||
@ -2189,11 +2187,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.01, 0.04, 0.49, 0.59,
|
||||
0.58, 0.6, 0.6, 0.59,
|
||||
0.58, 0.59, 0.59, 0.59,
|
||||
0.61, 0.58, 0.6, 0.17,
|
||||
0.02, 0.01, 0.01
|
||||
0.02, 0.02, 0.2, 0.6,
|
||||
0.6, 0.59, 0.59, 0.6,
|
||||
0.59, 0.6, 0.59, 0.6,
|
||||
0.59, 0.58, 0.59, 0.53,
|
||||
0.4, 0.02, 0.02
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -2202,11 +2200,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.01, 0.03, 0.31, 0.35,
|
||||
0.36, 0.37, 0.35, 0.35,
|
||||
0.37, 0.37, 0.37, 0.37,
|
||||
0.37, 0.37, 0.37, 0.12,
|
||||
0.01, 0.01, 0.01
|
||||
0.02, 0.01, 0.11, 0.38,
|
||||
0.38, 0.38, 0.38, 0.37,
|
||||
0.39, 0.38, 0.38, 0.38,
|
||||
0.38, 0.4, 0.39, 0.4,
|
||||
0.3, 0.01, 0.02
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -2220,11 +2218,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'User',
|
||||
data: [
|
||||
0.02, 0.02, 0.23, 0.46,
|
||||
0.49, 0.48, 0.51, 0.5,
|
||||
0.49, 0.48, 0.49, 0.48,
|
||||
0.49, 0.51, 0.5, 0.36,
|
||||
0.02, 0.02, 0.02
|
||||
0.02, 0.01, 0.09, 0.38,
|
||||
0.4, 0.4, 0.4, 0.4,
|
||||
0.4, 0.4, 0.4, 0.4,
|
||||
0.41, 0.41, 0.41, 0.35,
|
||||
0.25, 0.01, 0.02
|
||||
],
|
||||
borderColor: '#4bc0c0',
|
||||
backgroundColor: '#4bc0c0',
|
||||
@ -2233,11 +2231,11 @@ vus_max........................: 50 min=50 max=50
|
||||
{
|
||||
label: 'System',
|
||||
data: [
|
||||
0.02, 0.01, 0.17, 0.33,
|
||||
0.35, 0.36, 0.36, 0.35,
|
||||
0.34, 0.36, 0.35, 0.36,
|
||||
0.36, 0.34, 0.35, 0.26,
|
||||
0.02, 0.02, 0.02
|
||||
0.02, 0.02, 0.07, 0.27,
|
||||
0.29, 0.3, 0.29, 0.3,
|
||||
0.29, 0.3, 0.28, 0.28,
|
||||
0.29, 0.29, 0.29, 0.26,
|
||||
0.19, 0.02, 0.02
|
||||
],
|
||||
borderColor: '#ff6384',
|
||||
backgroundColor: '#ff6384',
|
||||
@ -2290,13 +2288,13 @@ Here are the final req/s results for each framework against PgSQL database.
|
||||
borderColor: "#0f766e",
|
||||
backgroundColor: "#0f766e",
|
||||
data: [
|
||||
205, 686, 625, 657, 643, 684, 625, 652, 606,
|
||||
656, 610, 662, 672, 687, 647, 650, 636, 663,
|
||||
665, 617, 600, 621, 637, 655, 628, 681, 649,
|
||||
637, 662, 568, 669, 667, 630, 625, 630, 685,
|
||||
654, 647, 667, 631, 618, 656, 614, 695, 650,
|
||||
659, 629, 638, 646, 609, 642, 661, 647, 677,
|
||||
601, 662, 665, 608, 671, 628, 632, 629, 150
|
||||
50, 371, 331, 391, 475, 450, 464, 464, 467, 450,
|
||||
447, 467, 467, 455, 451, 458, 463, 485, 470, 476,
|
||||
449, 481, 485, 461, 476, 442, 455, 474, 454, 456,
|
||||
439, 478, 472, 436, 473, 453, 463, 471, 456, 455,
|
||||
439, 470, 456, 473, 465, 459, 468, 471, 475, 474,
|
||||
444, 484, 469, 466, 468, 448, 477, 449, 443, 482,
|
||||
444, 452, 432, 374, 1
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -2334,14 +2332,15 @@ Here are the final req/s results for each framework against PgSQL database.
|
||||
borderColor: "#6d28d9",
|
||||
backgroundColor: "#6d28d9",
|
||||
data: [
|
||||
500, 987, 969, 985, 980, 1036, 987, 1003,
|
||||
980, 965, 1017, 988, 1013, 948, 961, 1024,
|
||||
989, 1018, 996, 981, 1016, 993, 981, 987,
|
||||
964, 1020, 985, 1018, 997, 972, 1010, 994,
|
||||
998, 1001, 970, 1028, 1021, 1000, 1013, 975,
|
||||
1013, 965, 993, 972, 960, 1029, 975, 1005,
|
||||
998, 962, 1024, 991, 1001, 981, 962, 1015,
|
||||
985, 993, 1001, 968, 1008, 466
|
||||
31, 1147, 1280, 1276, 1368, 1314, 1416,
|
||||
1396, 1246, 1394, 1362, 1398, 1406, 1312,
|
||||
1389, 1317, 1305, 1349, 1287, 1352, 1345,
|
||||
1361, 1368, 1293, 1371, 1344, 1364, 1370,
|
||||
1311, 1324, 1312, 1373, 1343, 1326, 1374,
|
||||
1325, 1397, 1376, 1328, 1391, 1323, 1386,
|
||||
1368, 1318, 1390, 1328, 1404, 1350, 1291,
|
||||
1387, 1328, 1380, 1378, 1307, 1360, 1297,
|
||||
1396, 1367, 1309, 1377, 1302, 1015
|
||||
],
|
||||
},
|
||||
]
|
||||
@ -2386,15 +2385,14 @@ Here are the final req/s results for each framework against PgSQL database.
|
||||
borderColor: "#0f766e",
|
||||
backgroundColor: "#0f766e",
|
||||
data: [
|
||||
12, 155, 362, 681, 799, 914, 973, 975, 984, 928, 959,
|
||||
964, 934, 975, 874, 924, 883, 908, 931, 888, 983, 935,
|
||||
967, 959, 898, 942, 939, 935, 933, 904, 926, 909, 911,
|
||||
904, 945, 929, 990, 962, 973, 896, 998, 962, 930, 983,
|
||||
891, 1007, 944, 925, 983, 952, 938, 984, 939, 936, 872,
|
||||
959, 996, 983, 968, 945, 909, 964, 973, 897, 921, 996,
|
||||
953, 986, 941, 929, 942, 966, 880, 943, 901, 956, 925,
|
||||
944, 967, 899, 935, 937, 924, 960, 899, 999, 917, 891,
|
||||
880, 884, 538
|
||||
734, 921, 803, 822, 870, 809, 859, 751, 834, 825,
|
||||
786, 779, 811, 928, 869, 802, 802, 802, 832, 802,
|
||||
798, 824, 768, 845, 825, 762, 860, 758, 812, 813,
|
||||
808, 783, 772, 797, 831, 835, 799, 781, 844, 824,
|
||||
787, 801, 769, 819, 799, 774, 837, 776, 837, 826,
|
||||
821, 776, 791, 816, 838, 792, 900, 795, 815, 807,
|
||||
781, 819, 729, 848, 861, 839, 872, 762, 796, 902,
|
||||
790, 791, 791, 830, 815, 835, 832, 583
|
||||
],
|
||||
},
|
||||
{
|
||||
|
@ -70,11 +70,8 @@
|
||||
title: Vuetify Admin
|
||||
date: 11/2020
|
||||
repo: okami101/vuetify-admin
|
||||
demo: https://va-demo.okami101.io/
|
||||
docs: https://www.okami101.io/vuetify-admin
|
||||
|
||||
- name: laravel-rad-stack
|
||||
title: Laravel RAD Stack
|
||||
date: 10/2021
|
||||
repo: adr1enbe4udou1n/laravel-rad-stack
|
||||
demo: https://laravel-rad-stack.okami101.io/
|
||||
|
@ -74,8 +74,8 @@
|
||||
{{ end }}
|
||||
<div class="flex items-center justify-between">
|
||||
<div class="flex items-center gap-4">
|
||||
<img src="/kube.png" width="30" height="30" alt="Kubernetes"
|
||||
title="Run on K3s over Hetzner Cloud" />
|
||||
<img src="/talos-logo.svg" width="30" height="30" alt="Talos Linux"
|
||||
title="Run on Talos Linux over Hetzner Cloud" />
|
||||
</div>
|
||||
<div class="hidden lg:block">
|
||||
{{/* Copyright */}}
|
||||
|
BIN
static/kube.png
BIN
static/kube.png
Binary file not shown.
Before Width: | Height: | Size: 15 KiB |
3
static/talos-logo.svg
Normal file
3
static/talos-logo.svg
Normal file
@ -0,0 +1,3 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 203.74 226.05"><defs><style>.cls-1{fill:url(#linear-gradient);}.cls-2{fill:url(#linear-gradient-2);}.cls-3{fill:url(#linear-gradient-3);}.cls-4{fill:url(#linear-gradient-4);}.cls-5{fill:url(#linear-gradient-5);}</style><linearGradient id="linear-gradient" x1="101.85" y1="-15.19" x2="101.85" y2="237.81" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffd200"/><stop offset="0.06" stop-color="#ffb500"/><stop offset="0.14" stop-color="#ff8c00"/><stop offset="0.21" stop-color="#ff7300"/><stop offset="0.26" stop-color="#ff6a00"/><stop offset="0.33" stop-color="#fc4f0e"/><stop offset="0.43" stop-color="#f92f1e"/><stop offset="0.51" stop-color="#f81b27"/><stop offset="0.57" stop-color="#f7142b"/><stop offset="0.68" stop-color="#df162e"/><stop offset="0.79" stop-color="#af1a38"/><stop offset="1" stop-color="#4b214c"/></linearGradient><linearGradient id="linear-gradient-2" x1="24.84" y1="-15.19" x2="24.84" y2="237.81" xlink:href="#linear-gradient"/><linearGradient id="linear-gradient-3" x1="178.9" y1="-15.19" x2="178.9" y2="237.81" xlink:href="#linear-gradient"/><linearGradient id="linear-gradient-4" x1="145.06" y1="-15.19" x2="145.06" y2="237.81" xlink:href="#linear-gradient"/><linearGradient id="linear-gradient-5" x1="58.64" y1="-15.19" x2="58.64" y2="237.81" xlink:href="#linear-gradient"/></defs><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path class="cls-1" d="M101.89,226.05c2.85,0,5.67-.15,8.46-.35V.35c-2.8-.21-5.62-.35-8.48-.35s-5.7.14-8.52.35V225.69c2.81.21,5.64.35,8.5.36Z"/><path class="cls-2" d="M11.56,50.9,9.12,48.47A112.82,112.82,0,0,0,.2,63.61c29.42,29.89,32.52,44.31,32.48,49.14C32.57,125,17.58,144.21,0,162a113.69,113.69,0,0,0,8.84,15.15c1-1,1.95-1.92,2.92-2.9,25.37-25.54,37.77-45.61,37.92-61.38S37.36,77,11.56,50.9Z"/><path class="cls-3" d="M192,174.29l2.92,2.9A113.69,113.69,0,0,0,203.74,162c-17.57-17.83-32.56-37.09-32.68-49.29-.11-11.9,14.79-31.15,32.46-49.18a112.88,112.88,0,0,0-8.9-15.1l-2.44,2.43c-25.8,26.05-38.27,46.34-38.12,62S166.61,148.75,192,174.29Z"/><path class="cls-4" d="M140.68,112.83c0-22,9.81-58.58,24.92-93.15A113,113,0,0,0,150.45,11c-16.54,37.27-26.78,76.91-26.78,101.87,0,24.15,11.09,64.23,27.93,101.7a113,113,0,0,0,14.84-8.77C150.85,170.73,140.68,134.07,140.68,112.83Z"/><path class="cls-5" d="M80,112.83C80,87.74,69.35,47.88,53,11.07a112.76,112.76,0,0,0-14.93,8.64C53.21,54.26,63,90.85,63,112.83c0,21.23-10.17,57.88-25.76,92.91a113.66,113.66,0,0,0,14.84,8.77C68.94,177.05,80,137,80,112.83Z"/></g></g></svg>
|
After Width: | Height: | Size: 2.7 KiB |
Submodule themes/congo updated: 475798497c...9dbf87b450
Reference in New Issue
Block a user