HttpArena
Frameworks

uio-ws

Experimental · Go · engine: uio · standard configuration

uws WebSocket echo on uio: the RFC 6455 handshake and frame parser run in the connection's own I/O task on uio's edge-triggered event loops, one per CPU, so each message is parsed from the buffer its task read into and echoed from that task with no goroutine per connection; a read round's replies leave coalesced in one sendmsg, and a send the socket refuses is finished by the next write turn without pausing the read. Default configuration otherwise.

Achievements

🥉 2 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
🥉 BronzeFamily compositeComposite · WebSocket3 of 5
🥉 BronzeTest profileWebSocket · Echo Pipelined3 of 5

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, less 2.5% for each of routing, middleware, request and response the entry does not do for you - its completeness factor, which the WebSocket and gRPC families do not carry. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.

FamilyRankComposite
WebSocket3 of 52283

Every result

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

CategoryProfileConnsReq/secAvgp99CPUMemory
WebSocketEcho5123,638,507140us292us6375.8%49MiB
WebSocketEcho4,0963,452,4691.18ms1.98ms6268.6%81MiB
WebSocketEcho16,3843,288,0424.84ms6.36ms6036.8%169MiB
WebSocketEcho Pipelined51249,165,507165us299us6455.1%49MiB
WebSocketEcho Pipelined4,09646,504,8671.40ms2.61ms6207.1%81MiB
WebSocketEcho Pipelined16,38444,743,7795.70ms7.82ms5942.6%169MiB
WebSocketEcho Short-lived5121,028,217172us1.13ms3417.3%66MiB
WebSocketEcho Short-lived4,0961,022,019178us1.14ms3293.4%64MiB

Compared with

The Go entries around uio-ws on the WebSocket composite, and the one leading them. The last column shows every profile side by side.

EntryCompositevs uio-ws
fib2963+30%head to head
fiber1658-27%head to head
go-websocket257-89%head to head

Compare uio-ws with any Go entry · Compare uio-ws with any entry, in any language · Every Go entry, ranked

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