Editing 869: Server Attention Span

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 4: Line 4:
 
| title    = Server Attention Span
 
| title    = Server Attention Span
 
| image    = server_attention_span.png
 
| image    = server_attention_span.png
 +
| imagesize =
 
| titletext = They have to keep the adjacent rack units empty. Otherwise, half the entries in their /var/log/syslog are just 'SERVER BELOW TRYING TO START CONVERSATION *AGAIN*.' and 'WISH THEY'D STOP GIVING HIM SO MUCH COFFEE IT SPLATTERS EVERYWHERE.'
 
| titletext = They have to keep the adjacent rack units empty. Otherwise, half the entries in their /var/log/syslog are just 'SERVER BELOW TRYING TO START CONVERSATION *AGAIN*.' and 'WISH THEY'D STOP GIVING HIM SO MUCH COFFEE IT SPLATTERS EVERYWHERE.'
 
}}
 
}}
Line 10: Line 11:
 
The comic shows - in human language - part of the conversations that a browser and web server do in order to get the right page. The protocol they use is called {{w|Hypertext Transfer Protocol|HTTP}}.
 
The comic shows - in human language - part of the conversations that a browser and web server do in order to get the right page. The protocol they use is called {{w|Hypertext Transfer Protocol|HTTP}}.
  
This comic makes fun of the issues that would arise back in the early days of smartphones days when web-servers see a mobile browser. Often, they would automatically suggest to load the mobile version of the website, but then serve the front page of the mobile site and not the page the user had requested. In quite a few sites, there would be no 1-to-1 correspondence of pages between the regular and the mobile site, so this problem is difficult to solve and very annoying. Since the date of this comic, mobile versions of websites have improved significantly, so the types of problems discussed in the comic rarely happen, although the difficulty of persuading the browser and/or server to ''not'' customise web-pages for mobile usage (e.g., assuming the display is going to be in portrait orientation, so restyling it accordingly) is often a continuing problem. As are the continual intrusive popovers 'suggesting' the reader might wish to install (or open) the dedicated 'app'.
+
This comic makes fun of the issue that many webservers who see a mobile browser will automatically suggest to load the mobile version of the website, but then serve the front page of the mobile site, not the page the user had requested.
 +
In quite a few sites, there is no 1-to-1 correspondence of pages between the regular and the mobile site, yet this habit is annoying.
  
A second issue with HTTP is identified in the last panel. HTTP is a {{w|stateless protocol}}. After serving the web page, the connection is severed. Any new request for a page will have to start afresh - which is where the server starts with again: "Hi! I'm a server!" Of course, browsers do not have egos nor do they hold grudges{{Citation needed}} but it can be annoying for users. This design issue can also slow down the browsing experience.
+
A second issue with the HTTP protocol is identified in the last pane. The HTTP protocol is {{w|Stateless_protocol|stateless}}. After serving the web page, the connection is severed. Any new request for a page will have to start afresh - which is where
 +
the server starts with again: "Hi! I'm a server!".
 +
Of course, browsers don't have egos nor do they hold grudges, so in reality, this is not a problem. For users, it can be annoying, though. It also slows down the browsing experience.
  
The title text is a joke that all the other servers in the rack would think the web server is being childish. <tt>/var/log/syslog</tt> is where Linux (used by the vast majority of servers) and other POSIX systems store their system log messages. The 'trying to start conversation' comment is probably a joke on {{w|Address Resolution Protocol|ARP}} discovery packets that are sent out to the network to see who is who. All servers send out ARP packets to see what other machines are on the network, but some machines send them out every 5 minutes, which can be extremely annoying for someone monitoring network traffic logs. The server rack shown has the machine involved set in a deliberate gap in an otherwised packed rack, which occasionally can be done for ventilation purposes (although this can also be disadvantageous to airflow in a closed-door cabinet) or for other organisational/logistical purposes, though physical position rarely actually matters for operational purposes as much as which cables and installation configuration it uses. In this case, however, the spacing is apparently so that there are no similarly anthropomorphic adjacent machines forced to closely listen to this server's inanely simple and over-cheery chatter. 
+
The title text is a joke that all the other servers in the rack think the web server is being childish. <tt>/var/log/syslog</tt> is where Linux and other posix systems store their system log messages. The 'trying to start conversation' comment is probably a joke on {{w|Address Resolution Protocol|ARP}} discovery packets that are sent out to the network to see who is who. All servers send out ARP packets to see what other machines are on the network, but some machines send them out every 5 minutes, which can be extremely annoying for someone monitoring network traffic logs.
  
The coffee comment is another jab at web servers. Some websites use {{w|Java (programming language)|Java}}, or other {{w|JVM}} based languages ({{w|Apache Groovy}}, {{w|Scala}}, etc.) as the back end of the website, as opposed to using {{w|PHP}} or {{w|Active Server Pages|ASP}}. Of course, java is another word for coffee (moreover, the logo of Java is a cup of coffee), so a web server running on coffee is likely to be well-caffeinated, and well-caffeinated people tend to bounce off the walls with enthusiasm.
+
The coffee comment is another jab at web servers. Some websites use {{w|java}}, or other {{w|jvm}} based languages ({{w|Grails}}, {{w|Scala}}, and others) as the back end of the website, as opposed to using {{w|PHP}} or {{w|Active Server Pages|ASP}}. The value that Grails, and other {{w|Web application framework|web frameworks}} give you, is that the programmers do not have to re-invent the wheel. They can start with a framework of {{w|Model–view–controller|model-view-controller}}, and build a {{w|REST}}-ful website from that. Of course, java is another word for coffee, so a web server running on coffee is likely to be well-caffeinated, and well-caffeinated people tend to bounce off the walls with enthusiasm.
  
 
==Transcript==
 
==Transcript==
:[Single server in a server rack.]
+
:[single blade in a server rack]
 
:Server: Hi! I'm a server! Who are you?
 
:Server: Hi! I'm a server! Who are you?
  
:[Mobile device with a web browser.]
+
 
 +
:[mobile device with a web browser]
 
:Browser: I'm a browser. I'd like to see this article.
 
:Browser: I'm a browser. I'd like to see this article.
  
:Server: Oh boy! I can help! Let me get it for— ...Whoa! You're a ''smartphone'' browser?
+
 
 +
:Server: Oh boy! I can help! Let me get it for- ..whoa! You're a ''smartphone'' browser?  
 +
 
  
 
:Browser: Yeah.
 
:Browser: Yeah.
 
:Server: Cooool! Hey, I've got this new mobile version of my site! Check it out! Isn't it pretty?
 
:Server: Cooool! Hey, I've got this new mobile version of my site! Check it out! Isn't it pretty?
 +
  
 
:Browser: Sure, but this is just your mobile site's main page. Where's the article I wanted?
 
:Browser: Sure, but this is just your mobile site's main page. Where's the article I wanted?
 +
  
 
:Server: What article?
 
:Server: What article?
:Browser: The one I—
+
:Browser: The one I-
 
:Server: Who are you?
 
:Server: Who are you?
:Browser: I—
+
:Browser: I-
 
:Server: Hi! I'm a server!
 
:Server: Hi! I'm a server!
  
 
{{comic discussion}}
 
{{comic discussion}}
 +
 
[[Category:Comics with color]]
 
[[Category:Comics with color]]
[[Category:Computers]]
 

Please note that all contributions to explain xkcd may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see explain xkcd:Copyrights for details). Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel | Editing help (opens in new window)