Builds a multi-threaded HTTP server. This server adds a thread-safe queue and some rwlocks to an HTTP server so that the server can serve multiple clients simultaneously. Ensures that its responses conform to a coherent and atomic linearization of the client requests. Creates an audit log that identifies the linearization of the server.
$ make
$ make format
$ make clean
Implementation for the Multithreaded HTTP Server. Implements a hash table to associate a unique lock for each URI. Sends an audit log to ensure linearization.
Header file for asgn4_helper_funcs.a
Contains all of the implementation for the header files below.
Header file for queue implementation
Header file for managing responses
Header file for debugging
Header file for managing connections
Header file for managing requests
Header for reader/writer lock implementation
Makefile contains the commands to compile, clean, and format the file.