Submitting Assignment 3
Once you’ve finished everything, you are ready to submit your work. You are submitting your assignment results as commits that have to be pushed to the github repository. The section about staging and committing changes in VSCode gives you a good introduction on how to do this.
To summarize the tasks for this assignment:
- From Sockets
- Finish setting up the server socket in the
serve_forever
function.
- Finish setting up the server socket in the
- From GET Request:
- Implement
handle_files_request
to handle HTTP GET requests for files. - Implement
handle_files_request
to handle HTTP GET requests for both files and directories.
- Implement
- From Servers
- Implement
forkserver
. - Implement
threadserver
. - Implement
poolserver
.
- Implement
- From Performance
- Test, measure, and comment on the performance of
httpserver
,forkserver
,threadserver
, andpoolserver
.
- Test, measure, and comment on the performance of
- From Proxy - Extra Credit
- Implement
handle_proxy_request
to proxy HTTP requests to another HTTP server.
- Implement
Please also note, that once you push to your repository, Github will compile and run your code automatically. This will result in a being added to the home page of your repository, telling you that all tests you added have successfully passed. If you see a
instead, then one or more of the tests in your code have failed and you will have to debug your code. Simply commit and push again once you have fixed the problems.
There is also an introduction to Git available that describes the overall concepts and the use of Git from a command line. It also answers some frequently asked questions.
We have a Github tutorial you might want to have a look at as well.
Last but not least, you can have a look at this document if you are interested in knowing more about Github Classroom.
And that’s it! You’re done!