lpereira/lwan logo

lpereira/lwan

Free

Experimental, scalable, high performance HTTP server

FreeFree tier
Type
Open Source

About lpereira/lwan

Lwan is a high-performance scalable web server written in C, designed for efficiency and flexibility. It supports TLS encryption via mbedTLS, multiple compression algorithms (zlib, brotli, zstd), and optional Lua scripting (Lua 5.1 or LuaJIT) for dynamic content. The server is cross-platform (Linux, FreeBSD, macOS) and can be built with CMake, with support for alternative memory allocators (mimalloc, jemalloc, tcmalloc). It includes a bundled benchmark tool (Weighttp) and a test suite. The project is marked as experimental and is actively developed on GitHub.

Key Features

High-performance scalable HTTP server
Supports TLS via mbedTLS
Compression support (zlib, brotli, zstd)
Optional Lua scripting (Lua 5.1 or LuaJIT)
Alternative memory allocators (mimalloc, jemalloc, tcmalloc)
Cross-platform (Linux, FreeBSD, macOS)
CMake build system
Bundled benchmark tool (Weighttp)
Test suite with Python

Pros & Cons

Pros
  • High performance and scalability
  • Open source with permissive license
  • Supports multiple compression algorithms
  • Optional Lua scripting for dynamic content
  • Runs on multiple platforms
  • Active development on GitHub
Cons
  • Experimental – may not be production-ready
  • Limited documentation (primarily README)
  • No built-in application-level features like routing or templating
  • Requires manual build from source for most distributions

Best For

Serving static and dynamic web contentBenchmarking and performance testingLearning and experimenting with HTTP server internalsDeploying lightweight web applications

FAQ

Is Lwan production-ready?
The project is labeled as experimental, so it may not be suitable for production use without thorough testing.