Lwan is a high-performance web server with a low disk and memory footprint. It can serve both static content and dynamic content generated by C or Lua code.
lwan is a highperformance & scalable web server for glibc/linux platforms.
in development for almost 4 years, lwan was until now a personal research effort that focused mostly on building a solid infrastructure for a lightweight and speedy web server:* low memory footprint (~500kib for 10k idle connections)* minimal memory allocations & copies* minimal system calls* handcrafted http request parser* files are served using the most efficient way according to their size no copies between kernel and userland for files larger than 16kib smaller files are sent using vectored i/o of memorymapped buffers header overhead is considered before compressing small files* mostly waitfree multithreaded design* diminute code base with roughly 7200 lines of c code
web-server lua http-server gnu-gpl