HttpArena
Frameworks

fulmine-tuned

Emerging · JS · engine: uwebsockets · tuned configuration

fulmine.js with the caches its standard entry has to leave off: the in-memory small-file cache and the stat cache, both shipped settings, both forbidden to a standard entry because they keep a static request off the disk.

Achievements

🥇 1 Gold · 🥈 6 Silver · 🥉 3 Bronze. Top three of a field, taken in this entry's own league: the family composite, the same composite among entries written in the same language, and each test profile it is scored on. Every field is the one the badges publish, so a medal and a badge always say the same thing. How medals are awarded.

MedalAwardFieldRank
🥇 GoldWithin its languageJS · HTTP/1.11 of 9
🥈 SilverFamily compositeComposite · Gateway2 of 5
🥈 SilverFamily compositeComposite · WebSocket2 of 33
🥈 SilverWithin its languageJS · WebSocket2 of 3
🥈 SilverTest profileGateway · Gateway (H3)2 of 4
🥈 SilverTest profileGateway · Production Stack2 of 3
🥈 SilverTest profileWorkload · JSON TLS2 of 42
🥉 BronzeTest profileGateway · Gateway (H2)3 of 4
🥉 BronzeTest profileWebSocket · Echo Short-lived3 of 7
🥉 BronzeTest profileWorkload · JSON3 of 98

Composite rank

Each profile of a family is worth 100 to the entry that leads it, and the composite is the sum over the family. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.

FamilyRankComposite
HTTP/1.14 of 98799
Gateway2 of 5158
WebSocket2 of 33226

Every result

Alpha Round, 38 runs. Requests per second is the best of three; latency, CPU and memory come from that run.

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline5121,296,530394us1.03ms6827.5%2.6GiB
ConnectionBaseline4,0961,269,4733.23ms4.29ms6775.9%2.7GiB
ConnectionPipelined51232,527,059251us703us6767.8%2.1GiB
ConnectionPipelined4,09632,485,1842.02ms4.47ms6383.9%2.1GiB
ConnectionShort-lived5121,062,950471us2.17ms6156.6%2.7GiB
ConnectionShort-lived4,0961,140,0823.58ms14.80ms6466.3%2.7GiB
WorkloadJSON4,0961,097,4593.37ms11.20ms6450.3%7.0GiB
WorkloadJSON Comp512304,8321.67ms9.48ms6327.9%7.1GiB
WorkloadJSON Comp4,096328,63412.45ms38.60ms6429.5%8.4GiB
WorkloadJSON Comp16,384353,53945.98ms106.40ms6353.2%10.4GiB
WorkloadJSON TLS4,0961,017,4544.04ms121.33ms6469.1%6.7GiB
WorkloadUpload322,03715.68ms101.00ms3110.2%6.6GiB
WorkloadUpload2562,147115.57ms876.50ms6343.1%7.3GiB
WorkloadStatic1,024418,6232.67ms25.42ms6560.8%6.2GiB
WorkloadStatic4,096573,4997.33ms48.37ms6541.6%7.4GiB
WorkloadStatic6,800643,20410.74ms63.96ms6508.5%7.9GiB
WorkloadStatic TLS1,024354,7593.03ms31.39ms6539.4%6.1GiB
WorkloadStatic TLS4,096460,9499.05ms120.34ms6459.1%7.0GiB
WorkloadStatic TLS6,800498,27713.80ms198.79ms6409.4%7.2GiB
DatabaseAsync DB1,024230,2563.87ms31.40ms5755.3%4.3GiB
DatabaseCRUD4,096359,16911.34ms21.00ms4369.2%8.1GiB
DatabaseFortunes1,02467,95813.75ms31.80ms6513.0%4.3GiB
Multi-endpointAPI-425636,7755.55ms25.20ms396.7%518MiB
Multi-endpointAPI-161,024121,9356.70ms46.60ms1509.4%2.2GiB
GatewayGateway (H2)51290,581169.48ms2.22s4288.5%4.9GiB
GatewayGateway (H2)1,02483,561340.01ms3.82s4357.2%7.0GiB
GatewayGateway (H3)6489,81322.68ms84.61ms3537.0%3.0GiB
GatewayGateway (H3)25661,451129.26ms766.54ms2586.7%3.6GiB
GatewayProduction Stack25659,08370.78ms941.15ms4212.0%3.2GiB
GatewayProduction Stack1,02450,712304.76ms4.25s4282.2%4.6GiB
WebSocketEcho5123,741,352136us356us6487.5%2.3GiB
WebSocketEcho4,0963,842,1601.06ms2.24ms6523.8%2.4GiB
WebSocketEcho16,3843,628,3284.50ms8.92ms6248.2%2.5GiB
WebSocketEcho Pipelined51225,061,894326us918us6793.7%2.4GiB
WebSocketEcho Pipelined4,09625,174,2722.60ms4.96ms6573.9%2.4GiB
WebSocketEcho Pipelined16,38423,793,01110.81ms14.60ms6333.6%2.6GiB
WebSocketEcho Short-lived5122,098,998146us529us5592.3%2.4GiB
WebSocketEcho Short-lived4,0962,575,0921.05ms2.83ms6019.6%2.4GiB

Compared with

The JS entries around fulmine-tuned on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.

EntryCompositevs fulmine-tuned
fulmine774-3%head to head
ultimate-express512-36%head to head

Compare fulmine-tuned with any JS entry · Every JS entry, ranked

Results updated · How the benchmark is run · The machine · Add or fix an entry