A high-performance, multi-threaded HTTP proxy server written in C++.
It efficiently handles concurrent client requests using a thread pool and performs request forwarding with caching support (optional).
- β Multi-threaded request handling using thread pool
- π Acts as a transparent proxy between client and server
- β‘ Efficient socket-based communication
- π Modular and extensible code structure
- π§ͺ Benchmarking tools included for performance analysis
Multi-Threaded-Proxy-Server/
βββ benchmark/ # Benchmarking tools (in progress)
βββ include/ # Header files for core classes
βββ src/ # Source code for proxy logic and utilities
βββ main.cpp # Main entry point of the application
βββ makefile # Makefile to build the project
βββ README.md # Project documentation
- π₯οΈ C++ (C++11 or later)
- π§΅ POSIX Threads (pthreads)
- π Berkeley Sockets API
- π οΈ Make for build automation
git clone https://github.com/get-akash/Multi-Threaded-Proxy-Server.git
cd Multi-Threaded-Proxy-Server
make
./proxy_server <cacheType: LRU/LFU> <cacheSize> <port>