|Blogs > rm_eroticker > Singing Kettle|
Why is this site so slow?
Why is this site so slow?
This is a perennial gripe. If A F F were free to all, no one would really be in a position to complain. But a site that takes money from members has no good excuse. By now it's clear that nothing will be done about it, because A F F simply can't do anything about it. It's beyond their competence. Not that many people think so, or would even believe this. They would rather blame something else. Bandwidth. Server hardware. Underpowered PCs. Malware. Anything but patently incompetent programming.
Recently, I saw the usual exculpation on Advice Lines, when a regular posted about her positive experience with an Internet Explorer clone ["[advice 944509]"]. There it was in one of the responses, like clockwork: 'There are lots of factors that affect "performance" of this site. First and foremost is the site servers (large central computers) and the software being used to run the site. They do not have the proper bandwidth and processing capacity to efficiently handle the load they are seeing. This is absolutely apparent simply by the way the site is and has been functioning in recent months.'
The scarequotes on "performance" made the rest of the paragraph predictable. And the rest of the response concerned itself with beefing up one's PC, another convenient scapegoat. Hardware upgrades are so magical, aren't they?
But the truth lies elsewhere. A F F does not have bandwidth or hardware problems. They have multiple servers, hosted on various upscale farms, with good connectivity. The problem is in the software, and "this is absolutely apparent simply by the way the site is and has been functioning in recent months." Let's review the sources of latency in a page load.
1. DNS lookup. Out of A F F's control, irrelevant.
2. Initial connection, consisting of the TCP 3-way handshake and sending the HTTP request. No problem there either, except when they have a network outage.
3. Response from the server, in two parts, (a) delay before the response starts, and (b) duration of the transmission. No problem with the second part: once the page starts coming down, the download completes in a hurry.
The problem is in the time the server takes to start sending its response. This, be it noted, is not a "performance" problem. It's a performance problem, pure and simple. No scarequotes need apply.
If a server takes a long time to start responding, this does not rate to be a bandwidth issue. And if the download itself is fast once it starts, this simply cannot be a bandwidth issue, as anyone who understands TCP would tell you. Time to toss this bandwidth bogey out the window.
How about underpowered servers, lacking "processing capacity"? Well, I have seen the following phenomenon many times, using a tabbing browser like Firefox. I open a page in a new tab, and the load seems to hang. After a while, I open the page again in another tab, and lo, the second copy loads before the first! That is, the poor suffering server, lacking the capacity to process my first request for a page, somehow found the capacity to process my second request for that same page while the first request was still pending.
We can toss the theory of oomph-challenged servers buckling under load out the window too.
So, anyone want to discuss the software? The gazillion bugs in this site should offer a clue to the level of competence involved, but it seems nobody wants to go there. So-called web developers live a charmed life, and follow a blessed calling. No matter what, poor site performance simply can't be their fault. It's gotta be something else...