2.0 KiB
Server Lab Assessment
Cory,
Nice work! The poem server works, though there are a few edge cases causing 500 errors--mostly in handling cases where the result is not found. A few thoughts on your answers to questions:
Another situation it might be useful to run the server on my own computer where I'm the only client on the same computer is to test whether the serve works the way it should before deploying it to a remote server or allowing others elsewhere to access it remotely.
Yes! In fact, apps like Zoom often run small servers locally. When you open a zoom link in an email, your calendar, or a web browser, the link actually makes a request from your local machine to the zoom server on the same machine-- which then kicks zoom into gear and opens up the call.
With google docs, I assume every time something is typed the location of the character typed as well as what was typed is posted as a change to the document on the server, so a route might be "change." Given that google docs allows for near-real-time remote collaboration, google docs likely gets the document extraordinarily frequently to make it appear that changes happen nearly instantly, so a route might be "show." Such a route might also simultaneously check if the user has access, as a user whose access is removed can no longer view or edit the document.
Indeed, real-time collaboration implies that changes are being sent to the server right away. It's not unusual for a webpage (particularly one bloated with ads and spyware) to make hundreds of HTTP requests in the course of opening a single page--but each request has to send its own headers, and has some other overhead. So real-time collaboration uses a newer protocol called WebSockets, which opens up one stream, and continuously sends data back and forth. Same with video conferencing. WebRTC is an exciting new protocol which makes it much easier to build real-time collaboration into all kinds of apps, and to have the streaming go peer-to-peer rather than all through a central server.