matttomasetti / C-LWS_Websocket-Benchmark-Server

This is a C (LibWebsockets) variation of websocket servers designed to benchmark the performance of both reliability and speed of various websocket implementations.

Home Page:https://matttomasetti.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

C LWS Websocket Benchmark Server

If interested in the results, read the Full Report or the shortened Blog Post about this experiment.

This is a C (LibWebsockets) variation of websocket servers designed to benchmark the performance of both reliability and speed of various websocket implementations.

The other server variations can be found at the links below

Benchmarking Client

The benchmarking client can be found here

Quick Set-Up

docker run -p 8080:8080 mtomasetti/c-lws_websocket-benchmark-server

That's it! The websocket server will automatically start on port 8080

Dockerfile Set-Up

docker build . -t websocket_benchmark/c
docker run -p 8080:8080 websocket_benchmark/c

Manual Set-up

Requirements

In order for this websocket server to compile and run, it requires:

  • CMake
  • Libwebsockets
  • json-c

It is recommended that you use the ready-made environment via the included Dockerfile

Install & Run

cmake configure .
cmake .
make
./c-lws-websocket-server

Links

GitHub

Docker Hub

About

This is a C (LibWebsockets) variation of websocket servers designed to benchmark the performance of both reliability and speed of various websocket implementations.

https://matttomasetti.com


Languages

Language:C 90.1%Language:Dockerfile 5.0%Language:CMake 4.9%