-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.md
54 lines (42 loc) · 2.36 KB
/
README.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# JAVA-HTTP-Server
### A high performance multi-threaded HTTP webserver built with JAVA implementing sockets and not using any web or other server libraries.
[](https://www.java.com/)
[](https://maven.apache.org/)
[](https://datatracker.ietf.org/doc/html/rfc2616)
<p align="center" width="100%">
<a href="#java-http-server"><img width="100%" src="https://i.ibb.co/t8sQLph/imgonline-com-ua-twotoone-R2-Oj-YEGX146-E2-PEs-removebg-preview.png"></a>
</p>
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.