Back to Projects
C HTTP Server

A lightweight and high-performance multithreaded HTTP/1.1 server implemented in C, capable of handling over 100k requests per second on a single laptop.
Overview
This project is a custom HTTP server written in C, optimized for raw performance and concurrency. Benchmarks show that it can handle more than 100,000 requests per second on a standard laptop, making it a lightweight yet powerful alternative to traditional servers. It supports HTTP/1.1 with full request parsing (GET, POST, PUT, DELETE, PATCH), query parameter extraction, and static file serving with custom error pages. The modular architecture separates HTTP handling, server logic, and utilities, ensuring maintainability and extensibility.
Achievements
- •Achieved over 100,000 requests per second on a single laptop
- •Implemented a multithreaded HTTP/1.1 server from scratch in C
- •Added support for GET, POST, PUT, DELETE, and PATCH methods
- •Integrated query parameter parsing and request handling
- •Built a static file serving system with custom 404 pages
- •Designed a modular codebase separating HTTP, server, and utility layers
- •Created a complete Makefile build system with run/clean targets
Project Details
Technologies
CPOSIX ThreadsMakefile