This is difficult to explain clearly but
A web page has a very technical format and anything that is not text has to be
represented in a manner that causes YOUR BROWSER to access it. For example,
pictures are represented in a tag
"
img src=
location ..."
The browser sees the
img tag and then creates a connection to fetch the picture located
at the given
location.
When everything is normal, it all happens quickly.
But consider, what happens when things are not normal?
* simple case, the picture is not found - -
* that's easy, quick and we get a 404-not found msg
* another, the server at the location is overload
* the access just takes more time
* the server is down
* the access stalls until it times out
* a host between you and the server is down
* access stalls
Now consider page where a whole raft of pictures required - - like facebook.
There's a long list of
- "img src=locationA ..."
- "img src=locationB ..."
- "img src=locationC ..."
- "img src=locationD ..."
- "img src=locationE ..."
if the access to locationA stalls, then none of the others (b,c,d,e) get tried until 'a' times out.
Ok, we missed one, access B - - oops, it too stalls and times out,
one at a time until all have been tried.
So, if the browser timeout value is 10 seconds and there's 100 objects to be tried,
the delay will be 1000 seconds.
This gets more complicated when a server hosts ads from another ad server,
say the akamai cdn. Lots of webpage structure is offloaded from the original server and
the content pulled by your browser from the CDN. The consequence is long delays to the user
when server being accessed is in trouble.
You as a user will find this very frustrating and extremely difficult to diagnose.
Sorry, that's just the 'Internet of things'.