Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/anolchakraborty/java-multi_threaded-http-server
A high performance multi-threaded HTTP webserver built with JAVA implementing sockets and not using any web or other server libraries.
https://github.com/anolchakraborty/java-multi_threaded-http-server
http http-server java javaserver javasockets server
Last synced: 15 days ago
JSON representation
A high performance multi-threaded HTTP webserver built with JAVA implementing sockets and not using any web or other server libraries.
- Host: GitHub
- URL: https://github.com/anolchakraborty/java-multi_threaded-http-server
- Owner: AnolChakraborty
- License: gpl-3.0
- Created: 2022-02-08T12:52:54.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-05-08T19:55:22.000Z (over 2 years ago)
- Last Synced: 2023-07-21T22:03:26.485Z (over 1 year ago)
- Topics: http, http-server, java, javaserver, javasockets, server
- Language: Java
- Homepage:
- Size: 1.54 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# JAVA-HTTP-Server
### A high performance multi-threaded HTTP webserver built with JAVA implementing sockets and not using any web or other server libraries.[![powered by](https://img.shields.io/badge/Powered%20by-JAVA-blue?style=for-the-badge&logo=java&logoColor=red&color=e67300&labelColor=3244a8)](https://www.java.com/)
[![powered by](https://img.shields.io/badge/Managed%20using-MAVEN-blue?style=for-the-badge&logo=Apache&logoColor=E4682A&color=812878&labelColor=26235B)](https://maven.apache.org/)
[![powered by](https://img.shields.io/badge/Java%20HTTP%20Server-HTTP/1.1-blue?style=for-the-badge&logo=AIOHTTP&logoColor=black&color=blue&labelColor=ba0d0d)](https://datatracker.ietf.org/doc/html/rfc2616)This project is under development and needs further improvement
#### Project is maintained using Maven
#### IDE used for project development is VS-Code## Server Performance
I tested the server in my local machine having following configuration, attached below is the result.[Benchmark Result](https://github.com/AnolChakraborty/java-multi_threaded-http-server/blob/main/Benchmark%20Result.pdf)
##### Configuration of testing machine:
- CPU: AMD Ryzen 5 5600H Hexa core CPU @ 4.2GHz
- GPU: Radeon RX550M 4GB
- RAM: 12GB DDR4 @ 3200MHz
- Storage: 512GB M.2 SSD
- OS: Windows 11
- JAVA version: Open JDK v18 Windows 64bit
- Benchmarking tool: [Webstress](https://www.paessler.com/tools/webstress)## Features added till now
- Multi-threaded request processing capability
- Can serve basic webpages
- Can handle javascript and css along with other files
- Can serve multiple webpages from different directories
- Can handle wrong webpage and resource requests
- Can handle icons & images and other media _(there is a bug here)_
- Can handle post request as well as AJAX calls
- Cookie based session handling.
- JSON data processing and parsing to and from the server to client
- Use of appropiate response codes
- Database integration with MySQL## Features to be added
- To handle Get request
- Video Streaming capabilities
- Proper handling of request method (POST/GET etc)## Upcoming feature
- GET request handling and GET data parsing## Current Bug
>Currently no bug exists.