Closed fengmk2 closed 1 year ago
already on undici https://github.com/nodejs/undici/pull/2057
benchmark 结论也证明了可以提升 qps
[bench:run] │ Tests on connections: 100 │ Samples │ Result │ Tolerance │ Difference with slowest │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - fetch │ 1 │ 2546.46 req/sec │ ± 0.00 % │ - │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - pipeline │ 1 │ 3308.13 req/sec │ ± 0.00 % │ + 29.91 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - no keepalive │ 1 │ 3545.84 req/sec │ ± 0.00 % │ + 39.25 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 enable timing - request │ 1 │ 5185.60 req/sec │ ± 0.00 % │ + 103.64 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 - request │ 1 │ 5258.27 req/sec │ ± 0.00 % │ + 106.49 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib2 - request │ 1 │ 5296.95 req/sec │ ± 0.00 % │ + 108.01 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - keepalive │ 1 │ 6556.30 req/sec │ ± 0.00 % │ + 157.47 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1KB │ 1 │ 7069.29 req/sec │ ± 0.00 % │ + 177.61 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 5MB │ 1 │ 7441.13 req/sec │ ± 0.00 % │ + 192.22 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 16KB │ 1 │ 8152.18 req/sec │ ± 0.00 % │ + 220.14 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1MB │ 1 │ 8481.68 req/sec │ ± 0.00 % │ + 233.08 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 128KB │ 1 │ 8487.72 req/sec │ ± 0.00 % │ + 233.32 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 2MB │ 1 │ 8511.11 req/sec │ ± 0.00 % │ + 234.23 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - stream │ 1 │ 8566.55 req/sec │ ± 0.00 % │ + 236.41 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request │ 1 │ 8571.86 req/sec │ ± 0.00 % │ + 236.62 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 10MB │ 1 │ 8596.52 req/sec │ ± 0.00 % │ + 237.59 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - dispatch │ 1 │ 9653.08 req/sec │ ± 0.00 % │ + 279.08 % │
https://github.com/fengmk2/undici/blob/urllib-benchmark/benchmarks/benchmark.js
高并发的时候默认 128KB 性价比最高
npm run bench
> undici@5.22.1 bench
> PORT=3042 concurrently -k -s first npm:bench:server npm:bench:run
[bench:run]
[bench:run] > undici@5.22.1 prebench:run
[bench:run] > node benchmarks/wait.js
[bench:run]
[bench:server]
[bench:server] > undici@5.22.1 bench:server
[bench:server] > node benchmarks/server.js
[bench:server]
[bench:run]
[bench:run] > undici@5.22.1 bench:run
[bench:run] > CONNECTIONS=1 node benchmarks/benchmark.js; CONNECTIONS=10 node benchmarks/benchmark.js; CONNECTIONS=20 node benchmarks/benchmark.js; CONNECTIONS=50 node benchmarks/benchmark.js; CONNECTIONS=100 node benchmarks/benchmark.js
[bench:run]
[bench:run] │ Tests on connections: 1 │ Samples │ Result │ Tolerance │ Difference with slowest │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ http - no keepalive │ 1 │ 6.59 req/sec │ ± 0.00 % │ - │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ http - keepalive │ 1 │ 6.72 req/sec │ ± 0.00 % │ + 1.90 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - fetch │ 1 │ 29.53 req/sec │ ± 0.00 % │ + 347.84 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - dispatch │ 1 │ 47.08 req/sec │ ± 0.00 % │ + 614.07 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - pipeline │ 1 │ 49.15 req/sec │ ± 0.00 % │ + 645.48 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ urllib2 - request │ 1 │ 50.99 req/sec │ ± 0.00 % │ + 673.30 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 - request │ 1 │ 51.75 req/sec │ ± 0.00 % │ + 684.88 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 enable timing - request │ 1 │ 51.85 req/sec │ ± 0.00 % │ + 686.40 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 5MB │ 1 │ 53.25 req/sec │ ± 0.00 % │ + 707.57 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request │ 1 │ 55.43 req/sec │ ± 0.00 % │ + 740.67 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 128KB │ 1 │ 56.92 req/sec │ ± 0.00 % │ + 763.28 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1MB │ 1 │ 58.20 req/sec │ ± 0.00 % │ + 782.67 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 512KB │ 1 │ 58.79 req/sec │ ± 0.00 % │ + 791.55 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 256KB │ 1 │ 59.52 req/sec │ ± 0.00 % │ + 802.66 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 10MB │ 1 │ 59.91 req/sec │ ± 0.00 % │ + 808.54 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 16KB │ 1 │ 60.16 req/sec │ ± 0.00 % │ + 812.33 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 2MB │ 1 │ 60.87 req/sec │ ± 0.00 % │ + 823.10 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - stream │ 1 │ 63.47 req/sec │ ± 0.00 % │ + 862.54 % │
[bench:run] |─────────────────────────────────|─────────|───────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1KB │ 1 │ 66.64 req/sec │ ± 0.00 % │ + 910.70 % │
[bench:run]
[bench:run] │ Tests on connections: 10 │ Samples │ Result │ Tolerance │ Difference with slowest │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ urllib2 - request │ 1 │ 247.71 req/sec │ ± 0.00 % │ - │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - fetch │ 1 │ 303.12 req/sec │ ± 0.00 % │ + 22.37 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 - request │ 1 │ 303.50 req/sec │ ± 0.00 % │ + 22.52 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ http - no keepalive │ 1 │ 340.48 req/sec │ ± 0.00 % │ + 37.45 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 5MB │ 1 │ 374.97 req/sec │ ± 0.00 % │ + 51.37 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 enable timing - request │ 1 │ 396.53 req/sec │ ± 0.00 % │ + 60.08 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ http - keepalive │ 1 │ 536.67 req/sec │ ± 0.00 % │ + 116.65 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 2MB │ 1 │ 731.81 req/sec │ ± 0.00 % │ + 195.43 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 256KB │ 1 │ 739.51 req/sec │ ± 0.00 % │ + 198.53 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - pipeline │ 1 │ 766.22 req/sec │ ± 0.00 % │ + 209.32 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 16KB │ 1 │ 819.81 req/sec │ ± 0.00 % │ + 230.95 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1KB │ 1 │ 819.83 req/sec │ ± 0.00 % │ + 230.96 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 512KB │ 1 │ 835.85 req/sec │ ± 0.00 % │ + 237.42 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - stream │ 1 │ 849.27 req/sec │ ± 0.00 % │ + 242.84 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 128KB │ 1 │ 874.25 req/sec │ ± 0.00 % │ + 252.93 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request │ 1 │ 883.97 req/sec │ ± 0.00 % │ + 256.85 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 10MB │ 1 │ 907.27 req/sec │ ± 0.00 % │ + 266.26 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1MB │ 1 │ 912.68 req/sec │ ± 0.00 % │ + 268.44 % │
[bench:run] |─────────────────────────────────|─────────|────────────────|───────────|─────────────────────────|
[bench:run] │ undici - dispatch │ 1 │ 992.99 req/sec │ ± 0.00 % │ + 300.86 % │
[bench:run]
[bench:run] │ Tests on connections: 20 │ Samples │ Result │ Tolerance │ Difference with slowest │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - fetch │ 1 │ 603.74 req/sec │ ± 0.00 % │ - │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 - request │ 1 │ 1000.39 req/sec │ ± 0.00 % │ + 65.70 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 enable timing - request │ 1 │ 1044.13 req/sec │ ± 0.00 % │ + 72.95 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib2 - request │ 1 │ 1078.19 req/sec │ ± 0.00 % │ + 78.59 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - no keepalive │ 1 │ 1155.97 req/sec │ ± 0.00 % │ + 91.47 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - keepalive │ 1 │ 1212.30 req/sec │ ± 0.00 % │ + 100.80 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - pipeline │ 1 │ 1533.77 req/sec │ ± 0.00 % │ + 154.05 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1KB │ 1 │ 1606.39 req/sec │ ± 0.00 % │ + 166.08 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 128KB │ 1 │ 1619.94 req/sec │ ± 0.00 % │ + 168.32 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 16KB │ 1 │ 1639.37 req/sec │ ± 0.00 % │ + 171.54 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 512KB │ 1 │ 1719.85 req/sec │ ± 0.00 % │ + 184.87 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 5MB │ 1 │ 1721.99 req/sec │ ± 0.00 % │ + 185.22 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1MB │ 1 │ 1730.51 req/sec │ ± 0.00 % │ + 186.63 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request │ 1 │ 1759.31 req/sec │ ± 0.00 % │ + 191.40 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 2MB │ 1 │ 1761.70 req/sec │ ± 0.00 % │ + 191.80 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 10MB │ 1 │ 1775.29 req/sec │ ± 0.00 % │ + 194.05 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 256KB │ 1 │ 1776.83 req/sec │ ± 0.00 % │ + 194.31 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - stream │ 1 │ 1956.25 req/sec │ ± 0.00 % │ + 224.02 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - dispatch │ 1 │ 2158.90 req/sec │ ± 0.00 % │ + 257.59 % │
[bench:run]
[bench:run] │ Tests on connections: 50 │ Samples │ Result │ Tolerance │ Difference with slowest │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - fetch │ 1 │ 1315.43 req/sec │ ± 0.00 % │ - │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - no keepalive │ 1 │ 2245.07 req/sec │ ± 0.00 % │ + 70.67 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib2 - request │ 1 │ 2545.91 req/sec │ ± 0.00 % │ + 93.54 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 enable timing - request │ 1 │ 2550.58 req/sec │ ± 0.00 % │ + 93.90 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 - request │ 1 │ 2659.73 req/sec │ ± 0.00 % │ + 102.19 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - keepalive │ 1 │ 3157.18 req/sec │ ± 0.00 % │ + 140.01 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - pipeline │ 1 │ 3674.30 req/sec │ ± 0.00 % │ + 179.32 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1KB │ 1 │ 4041.09 req/sec │ ± 0.00 % │ + 207.21 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 16KB │ 1 │ 4060.98 req/sec │ ± 0.00 % │ + 208.72 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1MB │ 1 │ 4358.94 req/sec │ ± 0.00 % │ + 231.37 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 128KB │ 1 │ 4412.31 req/sec │ ± 0.00 % │ + 235.43 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 10MB │ 1 │ 4418.12 req/sec │ ± 0.00 % │ + 235.87 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 512KB │ 1 │ 4439.59 req/sec │ ± 0.00 % │ + 237.50 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 256KB │ 1 │ 4504.79 req/sec │ ± 0.00 % │ + 242.46 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 5MB │ 1 │ 4535.20 req/sec │ ± 0.00 % │ + 244.77 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 2MB │ 1 │ 4580.35 req/sec │ ± 0.00 % │ + 248.20 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request │ 1 │ 4650.28 req/sec │ ± 0.00 % │ + 253.52 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - stream │ 1 │ 4848.58 req/sec │ ± 0.00 % │ + 268.59 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - dispatch │ 1 │ 5537.93 req/sec │ ± 0.00 % │ + 321.00 % │
[bench:run]
[bench:run] │ Tests on connections: 100 │ Samples │ Result │ Tolerance │ Difference with slowest │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - fetch │ 1 │ 3104.50 req/sec │ ± 0.00 % │ - │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - no keepalive │ 1 │ 3437.28 req/sec │ ± 0.00 % │ + 10.72 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib2 - request │ 1 │ 4675.72 req/sec │ ± 0.00 % │ + 50.61 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 - request │ 1 │ 5292.29 req/sec │ ± 0.00 % │ + 70.47 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ urllib3 enable timing - request │ 1 │ 5344.46 req/sec │ ± 0.00 % │ + 72.15 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - pipeline │ 1 │ 6428.36 req/sec │ ± 0.00 % │ + 107.07 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - dispatch │ 1 │ 6455.74 req/sec │ ± 0.00 % │ + 107.95 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ http - keepalive │ 1 │ 6664.55 req/sec │ ± 0.00 % │ + 114.67 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 256KB │ 1 │ 6881.70 req/sec │ ± 0.00 % │ + 121.67 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - stream │ 1 │ 6966.01 req/sec │ ± 0.00 % │ + 124.38 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1KB │ 1 │ 7840.23 req/sec │ ± 0.00 % │ + 152.54 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 5MB │ 1 │ 7933.26 req/sec │ ± 0.00 % │ + 155.54 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 2MB │ 1 │ 7973.46 req/sec │ ± 0.00 % │ + 156.84 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 16KB │ 1 │ 8099.23 req/sec │ ± 0.00 % │ + 160.89 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request │ 1 │ 8427.52 req/sec │ ± 0.00 % │ + 171.46 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 512KB │ 1 │ 8564.06 req/sec │ ± 0.00 % │ + 175.86 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 10MB │ 1 │ 8747.25 req/sec │ ± 0.00 % │ + 181.76 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 128KB │ 1 │ 8856.43 req/sec │ ± 0.00 % │ + 185.28 % │
[bench:run] |─────────────────────────────────|─────────|─────────────────|───────────|─────────────────────────|
[bench:run] │ undici - request on hwm 1MB │ 1 │ 8964.35 req/sec │ ± 0.00 % │ + 188.75 % │
[bench:run]
[bench:run] npm run bench:run exited with code 0
https://github.com/nodejs/node/issues/39092
https://dev.to/hateablestream/understanding-highwatermark-in-nodejs-streams-4fmb
downloadfile.js https://github.com/nodejs/node/issues/33262