HTTP Server in C++

The code below is used for and HTTP server that support GET and PUT command. First I implemented the server as a single-threaded server. Later, I adapted the server to have multi-threaded processing and logging to keep track of the instructions that were being passed. Lastly, Caching was implemented into the server in order to improve performance. Caching is a buffer in the server that contains a subset of the pages. When a request is recieved, if the requested page is in the cache then it is read from the cache (if it is a GET request) or updated in the cache (if it is a PUT request). Otherwise, the page is first read from the disk into the cache.

If you’d like to check out the source code: Click Here

Previous
Previous

Strong John Extracts