-
Notifications
You must be signed in to change notification settings - Fork 101
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
NFR Test Results for NGF version edge
- Loading branch information
Showing
428 changed files
with
17,844 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,123 @@ | ||
# Results | ||
|
||
## Test environment | ||
|
||
GKE cluster: | ||
|
||
- Node count: 3 | ||
- Instance Type: e2-medium | ||
- k8s version: 1.27.4-gke.900 | ||
- Zone: europe-west2-b | ||
- Total vCPUs: 6 | ||
- Total RAM: 12GB | ||
- Max pods per node: 110 | ||
|
||
Test VM: | ||
|
||
- Instance Type: e2-medium | ||
- Zone: europe-west2-b | ||
- vCPUS: 2 | ||
- RAM: 4GB | ||
|
||
NGF deployment: | ||
|
||
- NGF version: edge - git commit a41e9e46d72788bceea8ba44e01d4062afec75fd | ||
- NGINX Version: 1.25.2 | ||
|
||
## Test1: Running latte path based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/latte | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 6.29ms 7.85ms 182.06ms 88.67% | ||
Req/Sec 1.11k 588.11 2.31k 59.83% | ||
Latency Distribution | ||
50% 3.44ms | ||
75% 7.09ms | ||
90% 15.33ms | ||
99% 31.86ms | ||
66017 requests in 30.02s, 23.42MB read | ||
Requests/sec: 2199.43 | ||
Transfer/sec: 799.00KB | ||
``` | ||
|
||
## Test2: Running coffee header based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/coffee | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 31.95ms 37.10ms 243.16ms 89.07% | ||
Req/Sec 224.25 238.65 1.83k 90.32% | ||
Latency Distribution | ||
50% 14.31ms | ||
75% 43.74ms | ||
90% 76.70ms | ||
99% 171.95ms | ||
12913 requests in 30.03s, 4.59MB read | ||
Requests/sec: 430.05 | ||
Transfer/sec: 156.65KB | ||
``` | ||
|
||
## Test3: Running coffee query based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/coffee?TEST=v2 | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 29.26ms 43.85ms 457.05ms 82.26% | ||
Req/Sec 632.30 464.79 2.07k 60.43% | ||
Latency Distribution | ||
50% 4.45ms | ||
75% 45.84ms | ||
90% 103.14ms | ||
99% 145.53ms | ||
37324 requests in 30.02s, 13.56MB read | ||
Requests/sec: 1243.13 | ||
Transfer/sec: 462.53KB | ||
``` | ||
|
||
## Test4: Running tea GET method based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/tea | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 27.19ms 39.40ms 182.48ms 81.49% | ||
Req/Sec 706.49 416.90 1.85k 65.42% | ||
Latency Distribution | ||
50% 4.06ms | ||
75% 42.24ms | ||
90% 99.21ms | ||
99% 133.34ms | ||
41265 requests in 30.04s, 14.56MB read | ||
Requests/sec: 1373.59 | ||
Transfer/sec: 496.31KB | ||
``` | ||
|
||
## Test5: Running tea POST method based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/tea | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 27.32ms 39.49ms 208.66ms 81.40% | ||
Req/Sec 685.47 491.33 2.08k 58.43% | ||
Latency Distribution | ||
50% 4.19ms | ||
75% 42.40ms | ||
90% 99.38ms | ||
99% 133.25ms | ||
40723 requests in 30.03s, 14.37MB read | ||
Requests/sec: 1356.10 | ||
Transfer/sec: 489.99KB | ||
``` | ||
|
||
## Observations | ||
|
||
- Path based routing is the most performant of the routing methods | ||
- The njs based methods are less performant: | ||
- Header based routing is the least performant of the routing methods, by a factor of roughly 5 compared to the path | ||
based routing. | ||
- The query and method based routing methods are approximately 2/3s as performant as the path based routing. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,123 @@ | ||
# Results | ||
|
||
## Test environment | ||
|
||
GKE cluster: | ||
|
||
- Node count: 3 | ||
- Instance Type: e2-medium | ||
- k8s version: 1.27.3-gke.100 | ||
- Zone: europe-west2-b | ||
- Total vCPUs: 6 | ||
- Total RAM: 12GB | ||
- Max pods per node: 110 | ||
|
||
Test VM: | ||
|
||
- Instance Type: e2-medium | ||
- Zone: europe-west2-b | ||
- vCPUS: 2 | ||
- RAM: 4GB | ||
|
||
NGF deployment: | ||
|
||
- NGF version: edge - git commit 21a2507d3d25ac0428384dce2c042799ed28b856 | ||
- NGINX Version: 1.25.3 | ||
|
||
## Summary | ||
|
||
- Path based routing performance has decreased slightly since 1.0.0 | ||
- Header based routing performance has increased significantly since 1.0.0 | ||
- Query based routing performance has slightly increased since 1.0.0 | ||
- Method based routing on average between GET and POST based has remained roughly the same as v1.0.0, but in this run | ||
the performance of the POST method was significantly less than that of the GET method | ||
|
||
## Test1: Running latte path based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/latte | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 5.90ms 5.95ms 93.07ms 91.58% | ||
Req/Sec 1.02k 229.69 1.92k 75.67% | ||
Latency Distribution | ||
50% 4.35ms | ||
75% 6.50ms | ||
90% 10.73ms | ||
99% 32.50ms | ||
60729 requests in 30.02s, 21.66MB read | ||
Requests/sec: 2023.13 | ||
Transfer/sec: 738.91KB | ||
``` | ||
|
||
## Test2: Running coffee header based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/coffee | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 6.83ms 7.92ms 136.86ms 93.66% | ||
Req/Sec 0.89k 274.77 1.68k 68.00% | ||
Latency Distribution | ||
50% 4.98ms | ||
75% 7.56ms | ||
90% 11.89ms | ||
99% 44.04ms | ||
53421 requests in 30.01s, 19.10MB read | ||
Requests/sec: 1779.97 | ||
Transfer/sec: 651.84KB | ||
``` | ||
|
||
## Test3: Running coffee query based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/coffee?TEST=v2 | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 6.84ms 7.76ms 129.66ms 93.62% | ||
Req/Sec 0.88k 206.19 1.58k 77.67% | ||
Latency Distribution | ||
50% 4.83ms | ||
75% 7.63ms | ||
90% 11.87ms | ||
99% 41.39ms | ||
52846 requests in 30.01s, 19.30MB read | ||
Requests/sec: 1760.75 | ||
Transfer/sec: 658.55KB | ||
``` | ||
|
||
## Test4: Running tea GET method based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/tea | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 6.55ms 6.41ms 97.49ms 91.74% | ||
Req/Sec 0.90k 190.25 1.64k 77.17% | ||
Latency Distribution | ||
50% 4.85ms | ||
75% 7.55ms | ||
90% 11.80ms | ||
99% 35.33ms | ||
53661 requests in 30.02s, 19.04MB read | ||
Requests/sec: 1787.34 | ||
Transfer/sec: 649.30KB | ||
``` | ||
|
||
## Test5: Running tea POST method based routing | ||
|
||
```console | ||
Running 30s test @ http://cafe.example.com/tea | ||
2 threads and 10 connections | ||
Thread Stats Avg Stdev Max +/- Stdev | ||
Latency 31.45ms 43.10ms 408.63ms 81.26% | ||
Req/Sec 458.81 332.92 1.73k 61.26% | ||
Latency Distribution | ||
50% 6.70ms | ||
75% 51.43ms | ||
90% 107.48ms | ||
99% 146.54ms | ||
26914 requests in 30.03s, 9.55MB read | ||
Requests/sec: 896.12 | ||
Transfer/sec: 325.54KB | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
# Results | ||
|
||
## Test environment | ||
|
||
NGINX Plus: true | ||
|
||
GKE Cluster: | ||
|
||
- Node count: 3 | ||
- k8s version: v1.27.8-gke.1067004 | ||
- vCPUs per node: 2 | ||
- RAM per node: 4022908Ki | ||
- Max pods per node: 110 | ||
- Zone: us-east1-b | ||
- Instance Type: e2-medium | ||
|
||
## Summary | ||
|
||
- First time running with NGINX Plus | ||
|
||
## Test1: Running latte path based routing | ||
|
||
```text | ||
Requests [total, rate, throughput] 30000, 1000.03, 999.99 | ||
Duration [total, attack, wait] 30s, 29.999s, 1.23ms | ||
Latencies [min, mean, 50, 90, 95, 99, max] 524.975µs, 1.946ms, 1.095ms, 2.042ms, 4.461ms, 23.134ms, 93.918ms | ||
Bytes In [total, mean] 4800000, 160.00 | ||
Bytes Out [total, mean] 0, 0.00 | ||
Success [ratio] 100.00% | ||
Status Codes [code:count] 200:30000 | ||
Error Set: | ||
``` | ||
|
||
## Test2: Running coffee header based routing | ||
|
||
```text | ||
Requests [total, rate, throughput] 29999, 1000.01, 999.97 | ||
Duration [total, attack, wait] 30s, 29.999s, 1.021ms | ||
Latencies [min, mean, 50, 90, 95, 99, max] 592.975µs, 2.927ms, 1.122ms, 2.833ms, 9.549ms, 44.935ms, 130.583ms | ||
Bytes In [total, mean] 4829839, 161.00 | ||
Bytes Out [total, mean] 0, 0.00 | ||
Success [ratio] 100.00% | ||
Status Codes [code:count] 200:29999 | ||
Error Set: | ||
``` | ||
|
||
## Test3: Running coffee query based routing | ||
|
||
```text | ||
Requests [total, rate, throughput] 30000, 1000.02, 999.99 | ||
Duration [total, attack, wait] 30s, 29.999s, 803.929µs | ||
Latencies [min, mean, 50, 90, 95, 99, max] 614.151µs, 2.326ms, 1.109ms, 2.504ms, 6.639ms, 30.947ms, 86.914ms | ||
Bytes In [total, mean] 5070000, 169.00 | ||
Bytes Out [total, mean] 0, 0.00 | ||
Success [ratio] 100.00% | ||
Status Codes [code:count] 200:30000 | ||
Error Set: | ||
``` | ||
|
||
## Test4: Running tea GET method based routing | ||
|
||
```text | ||
Requests [total, rate, throughput] 30000, 1000.00, 999.97 | ||
Duration [total, attack, wait] 30.001s, 30s, 864.779µs | ||
Latencies [min, mean, 50, 90, 95, 99, max] 579.858µs, 2.742ms, 1.064ms, 3.978ms, 9.655ms, 42.104ms, 118.446ms | ||
Bytes In [total, mean] 4740000, 158.00 | ||
Bytes Out [total, mean] 0, 0.00 | ||
Success [ratio] 100.00% | ||
Status Codes [code:count] 200:30000 | ||
Error Set: | ||
``` | ||
|
||
## Test5: Running tea POST method based routing | ||
|
||
```text | ||
Requests [total, rate, throughput] 30000, 1000.03, 999.98 | ||
Duration [total, attack, wait] 30.001s, 29.999s, 1.595ms | ||
Latencies [min, mean, 50, 90, 95, 99, max] 581.255µs, 1.612ms, 1.204ms, 1.914ms, 2.994ms, 11.802ms, 43.145ms | ||
Bytes In [total, mean] 4740000, 158.00 | ||
Bytes Out [total, mean] 0, 0.00 | ||
Success [ratio] 100.00% | ||
Status Codes [code:count] 200:30000 | ||
Error Set: | ||
``` |
Oops, something went wrong.