A small light-weight multithreaded HTTP server
clone https://github.com/jackwthake/Web-Server
cd Web-Server
make bin/serve
- New request is recieved in
server_listen_loop()
server_listen_loop()
opens the request, queueing a new job to process the request- Free thread picks up the job
handle_connection()
retrieves basic information about the requesthandle_connection()
attempts to query the router for a matching pathhandle_connection()
sends the appropriate data back to the clienthandle_connection()
closes out the client socket
- Serve HTTP requests
- File logging
- Automatically route files
- Multithreaded handling of requests
- Thread pooling
- Use OpenSSL to serve HTTPS requests
- Server side JSON Parsing