https://github.com/abhisheku19/multithreaded-webserver
A high performance web server designed to handle concurrent client requests efficiently. Features include multithreading, static file serving (HTML, CSS, JavaScript), and thread pooling for improved scalability and responsiveness.
https://github.com/abhisheku19/multithreaded-webserver
client-server concurrency html-css-javascript java17 multithreading socket-programming thread-pool
Last synced: over 1 year ago
JSON representation
A high performance web server designed to handle concurrent client requests efficiently. Features include multithreading, static file serving (HTML, CSS, JavaScript), and thread pooling for improved scalability and responsiveness.
- Host: GitHub
- URL: https://github.com/abhisheku19/multithreaded-webserver
- Owner: AbhishekU19
- Created: 2025-03-14T15:40:22.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-14T16:22:43.000Z (over 1 year ago)
- Last Synced: 2025-03-14T17:21:54.898Z (over 1 year ago)
- Topics: client-server, concurrency, html-css-javascript, java17, multithreading, socket-programming, thread-pool
- Language: Java
- Homepage:
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Multithreaded WebServer



A high-performance, multithreaded Java web server designed to handle concurrent client requests efficiently. This project demonstrates the implementation of a scalable web server capable of serving static files (HTML, CSS, JavaScript) and handling multiple clients simultaneously using multithreading and thread pooling.
---
## **Features**
- **Multithreading**: Handles multiple client requests concurrently using threads.
- **Static File Serving**: Efficiently reads and delivers static files (HTML, CSS, JavaScript) from the file system.
- **Thread Pooling**: Utilizes a thread pool to manage resources and improve scalability.
- **Timeout Handling**: Configurable timeout for client connections to ensure optimal resource utilization.
- **Scalable Architecture**: Designed to handle increasing client loads with minimal performance degradation.
---
## **Performance Improvements**
- **35% Improvement in Server Efficiency**: Optimized concurrent request handling and resource management.
- **Reduced Latency**: Improved responsiveness by efficiently serving static files and managing client connections.
---
## **Technologies Used**
- **Java 17**: Core programming language for server implementation.
- **Multithreading**: For handling concurrent client requests.
- **Socket Programming**: For client-server communication.
- **Thread Pooling**: For efficient resource management.
- **Static File Handling**: For serving HTML, CSS, and JavaScript files.