rfunk: (Default)
Rob Funk ([personal profile] rfunk) wrote2006-11-01 07:34 pm

Tubing Case Study

You may have heard about the confusion between UTube.com (a Toledo tubing manufacturer) and YouTube.com (the video-sharing site). UTube.com got 68 million hits on their site in August. (The web server I run at work got a total of about 4.5 million hits that same month, across all the sites we host.) The UTube people are so upset about getting web traffic intended for YouTube that they're filing a lawsuit against YouTube demanding that YouTube stop using the youtube.com or pay Universal Tube's cost for creating a new domain.

The latest news blurb (a PDF!) at UTube's site says that the traffic keeps shutting down their website, and they've had to move to different servers four different times recently.

I got curious: If they're changing servers due to the traffic, surely they're moving to a different (more efficient) technology that can handle the traffic better than their original technology, right? Well, a little bit. In early October they switched from Windows 2000 running the Microsoft IIS 5.0 web server to Windows 2003 running the Microsoft IIS 6.0 web server, and since then seem to just switch hardware.

By comparison, YouTube.com is running Linux and the Apache web server. (Of course they probably have a lot of hardware too.) Their job listings give more hints about the technologies they use.

So why doesn't UTube.com switch to Linux/Apache, or an even more efficient server like LightTPD? Oops, they're an all-ASP site, and ASP only works on Windows. (Its equivalents in the Linux world, such as PHP, also run on Windows.) Any platform change would require rewriting the ASP to something else, and since they just revamped the site in April they're probably not eager to redo it yet again.

They still have other options though. The people looking for YouTube are unlikely to go beyond the first page of UTube once they see that they're at the wrong place. So why not make the first page as fast and efficient as possible (e.g. no database access or ASP interpretation, for a start)? Another thing that would help would be to put a caching proxy in front of the server doing all the real work.

Interestingly, the code is currently preventing that last solution explicitly. The HTTP headers for the home page include:
Cache-Control: no-cache
Pragma: no-cache
Server: Microsoft-IIS/6.0
Content-Length: 38192
MicrosoftOfficeWebServer: 5.0_Pub
X-Powered-By: ASP.NET
See those lines with "no-cache"? That means they're explicitly preventing the page from being cached. If those directives were removed their hit count would go down. Even more so if they put their own cache in front of it.

I'm almost tempted to offer my or my company's services to Universal Tube.

[identity profile] chronarchy.livejournal.com 2006-11-02 02:31 pm (UTC)(link)
Why don't you? Honestly, it could mean some business and might just fix their issues.