A Brief History of Time
We've always talked about our hardware upgrades and how well they perform. Our hardware architecture is, no doubt, critical to the success of the site, but the software that actually runs AnandTech.com is equally important. Recently, we performed a major architecture shift from a ColdFusion based back-end to Microsoft.NET. We thought that this would be an interesting article, to highlight the history of AnandTech.com from a software perspective.
In this article, we will discuss background information on the following platforms:
ColdFusion
Macromedia ColdFusion is a web-based language that focuses on the RAD development of dynamic web content. ColdFusion started off based on a C++ runtime that interpreted code within HTML templates and compiled it into PCODE, which was then interpreted by the ColdFusion runtime and delivered to the web server and, in turn, to the end user requesting the page. ColdFusion back then was similar to PHP and ASP. Recently, Macromedia decided to take the ColdFusion language to a standards based platform, JAVA. ColdFusion runs on top of almost any J2EE server; we used the ColdFusion standalone version, which uses Macromedia JRUN as the J2EE server. ColdFusion templates are written in CFML (ColdFusion Markup Language) and then compiled down to JAVA byte code and executed by the J2EE server. Macromedia used to be the only game in town, in terms of ColdFusion. Now, a company named
New Atlanta makes a ColdFusion server that also runs on .NET.
Microsoft .NET
The .NET platform is the new framework for building Windows based and web-based applications from Microsoft. It not only replaces the older ASP platform, but introduces some up-to-date languages that run on the Common Language Runtime, which is the backbone of .NET. The three main languages used with .NET are: C# (similar to C++), VB.NET (somewhat similar to VB) and J# (fairly close to JAVA). The beauty of this architecture is that it brings different developers together on a single platform. Those who wrote mostly in C++ or JAVA will probably choose C#; and those who are familiar with VB or more verbose languages will probably choose VB.NET. J# is there for the JAVA developer. Whatever language in which you write your code, it is compiled into an intermediate language, CIL (Common Intermediate Language), which is then managed and executed by the CLR. ASP.NET is simply another .NET based environment that allows you to write in any of the languages that run on the CLR. Its syntax is similar to ASP.
67 Comments
View All Comments
bobbozzo - Monday, August 9, 2004 - link
Jason, would you be willing to publish your # of monthly pageviews?We're running a single quad xeon server and wondering whether to get a faster server or a cluster. We're at almost 4million page views/mo; over 1/3 of those are searching our database.
Thanks
JasonClark - Monday, August 2, 2004 - link
A behind the scenes hardware upgrade is coming soon.czakalw3 - Monday, August 2, 2004 - link
"have learned more in 3-4 years than some people do in their entire career."nice one.
beyond all the technical considerations, it seems your change of platform is nothing but a "were already commited to ms in the os so why not go all the way?"
dont label me as a fundamentalist but cost could easily be 0 with the same results?
czakalw3 - Monday, August 2, 2004 - link
errDevnut - Saturday, July 31, 2004 - link
One thing that seemed to be lacking in this article that was present in all the past "anandtech upgrade" articles, was much more detail in relation to the hardware changes/upgrades, and why you did what you did.I noticed Jason indicated SQL2000 was running on a quad opteron, so there's obviously been some significant changes. Can we expect an update on this front?
Zoomer - Friday, July 30, 2004 - link
Would you please post load information for your quad opteron?It would be interesting, to say the least.
Staples - Thursday, July 29, 2004 - link
I saw this article posted a few days ago but just decided to look at the comments to see how many posts it took for the Linux fanboys to show themselves. Apparently not long. Anywho, I am just starting out with the whole .net thing since I have heard such good things about it. This article is just another one.RZaakir - Thursday, July 29, 2004 - link
Man I wish the these PHP fanboys would realize that Microsoft actually has a few good products. I think that PHP is superior to ASP classic in many ways but PHP (version 4 anyway) and ASP.NET aren't even in the same league. Period. You'd be better off making a JSP vs. ASP.NET argument as they are similar products.Does MySQL have stored procedures in a production version yet?
JasonClark - Thursday, July 29, 2004 - link
FFS, I don't care for HardOCP's design, it's dated and the black background isnt for us... THe design looks great, I think the only way to get more clean is to remove more ads... but that isn't going to happen. Speed-wise, I think you have some issues somewhere, here the page shows in less than 3 tenths of a second. Benchmarks indicate about 2 tenths.Macaw - Thursday, July 29, 2004 - link
You've been blogged: http://blogs.msdn.com/jrule