This project contains two parts written for a class on Computer System Design: an HTML server and a loadbalancer. The Server is a basic HTML server which can receive and respond to requests according to the HTML protocol. The Loadbalancer is designed to sit in front of serveral HTML servers and distribute load between them, as well as monitoring the health of each server using a heartbeat to make sure the server is still operational. Both are written in C from scratch using no HTML libraries and are multithreaded using the pthread
library. Both also have a design document which explains various design decisions as well as go into detail as to how the inner workings of each application work. Since this code is from a university course I cannot make the code publicly available, but I can share it upon request to those interested.