cws
A minimal HTTP web server written in C.
Note
: This is a personal project; it is not intended to be a production-ready tool, nor will it ever be. Use it at your own risk.
Requirements
Build
meson setup build
meson compile -C build
Usage
- Copy
config.yamlandwww/directory to your working directory - Run
./build/cws - Open
http://localhost:3030in your browser
Documentation
git submodule update --init
doxygen
Then open docs/html/index.html.
Roadmap
- Virtual hosts support
- Minimal templating engine
- IPv6 compatibility
Performance
Tested with goku (-c 400 -d 30):
Concurrency level 400
Time taken 31 seconds
Total requests 365363
Mean request time 22.665250723253322 ms
Max request time 2067 ms
Min request time 0 ms
95'th percentile: 20 ms
99.9'th percentile: 1078 ms
200 OK 365363
Languages
C
71.6%
HTML
26.5%
Meson
1.9%