C't NT vs Linux benchmarks : Linux wins
Anonymous Coward writes "Go check out this benchmark of Linux vs NT in a real life-situation. C't makes a pretty good point here, showing Linux/Apache to be ahead of NT in performance in daily life! Also compliments the Linux community for its responsiveness: "Emails to the respective [Linux] mailing lists even resulted in special
kernel patches which significantly increased performance. " This is the C't benchmark that's been bouncing around lately-translated into English, for all of the German-impaired out there.
c't (IMHO the only independant mag left) has done much more realistic testing (page sizes, static vs CGI,load, SMP) and reported their full results. At less than 1000 hits/second, Linux soundly trounces NT.
But look toward the end of the article: with dual 100 NIC's and 1000+ hit/sec loads, NT pulls ahead. Clearly, something could be optimized further in the Linux TCP/IP stack or ethernet drivers. Perhaps finer grained kernel locking? Maybe we should thank Mindcraft for helping debug Linux! I'm sure it was by accident.
An important point gets lost in all the discussion about these benchmarks: Both NT/IIS and Linux/Apache perform astoundingly well, and both perform much better than they would if the other didn't exist. Developers for both sets of products borrow good ideas from the other, and both race to make improvements to keep up.
MICROS~1 flacks like to blather on about needing their monopoly position in the market to protect their "freedom to innovate," but where they have no competition, they don't innovate. Why can't they acknowledge that the only reason IIS doesn't suck is because Apache exists?
I wish they had similar competition on the desktop. If they did, maybe I wouldn't need to reboot my Win98 4x/day.
Read harder.
And think harder.
NT was significantly faster than Linux in one "pretty much" unrealistic benchmark.
Linux was massively faster in two "somewhat" unrealistic benchmarks.
Linux was slightly faster in the other benchmarks.
So please tell me why do you think that NT/IIS is "a better high performance web/file server"???
The point is that NT is optimized for one single case, possibly only needed by something like a mega high volume porn site (static pages, as Alan Cox pointed out), and linux does better in all other cases.
And if you want to server MANY files, you need to buy TEN NT boxes instead of ONE Linux box.
For the T1: Linux is a fine solution for a 100MBit site. A T1 is 1.5 MBit.
Please do not confuse the facts.
Well a few points:
:)
1) NT tends to not handle high loads as gracefully as Linux. Linux/Apache tend to slow to a crawl under high loads, but I've never managed to crash the server. I've done that a bunch of times under NT (usually when running SQL server and IIS on the same machine... but running various combinations of Oracle, Sybase or MySQL with Apache under Linux doesn't seem to cause a problem...)
2) I've found the most unreliable NT servers are the ones that people have been hacking around on, tweaking, etc. Vanilla NT with everything else carefully installed seems fairly stable. Mind you, I'd never run a serious application on one, but you CAN get them working reliably. Its harder to keep non-administrators (ie, clueless management) from messing around on NT servers than Linux servers. (I once built a sandbox system that ran a clone of the system in a chroot'ed sandbox with the logins on the first six vc's pointing at it, with one on nine pointing to the real system -- I guessed that the owner of the company I was working for at the time was monkeying around in the system and that's why Linux kept crashing. After doing that, the sandboxed system kept flaking out, but the production one stayed up!)
3) Buggy COM objects and ISAPI objects are prone to crashing various parts of NT, like IIS and for whatever reason, causing bluescreens. Lots of sites use not-so-stable third party COM objects and ISAPI's and from experience, it can be a real bitch to figure out whats causing the server to crap out under high loads in that case. The last major website I built using NT, I ended up rewriting all the COM objects we'd bought in Java so I had source and could fix the bugs that were my fault.
4) Slashdot isn't all that reliable. I have problems with it all the time. (Connection refused, partial pages, broken HTML, extra blank stories, etc...)
#4 isn't a flame at slashdot -- god knows I spend enough time on here commenting on things and reading the site. Slashdot is amazingly stable for the way its architected (running on a single server, no redundancy at the server level or the hardware level, etc...) I wouldn't run a high traffic site I was paid to build like that, but they're doing great for bootstrapping the site themselves.
Something that bothered me about the Mindcraft studies that was partially explained in the earlier article posted here about saturating a T1/T3 on a single-processor Linux box, and still further explained in this article...
If NT is such hot stuff running a webserver, how come so many NT servers die horribly when they're slashdotted, yet slashdot (P2x2 256MB ram if I remember correctly) has enough processor time and bandwidth left over to customize the interface and most of the pages that it spits out? I have seen so many high-traffic NT sites bog down and sometimes just not respond when they get busy, yet most Linux/FreeBSD servers keep chugging right along.
I wonder if there's a way to benchmark that...
Improvise, adapt, and overcome.
I love the web - it is the great equalizer. Bad benchmarks like Mindcraft can be shot down in quick order. However there is one test that would have crushed NT in BOTH tests. It is simply this: Conduct the test over a 6 week period.
Having worked in an ALL NT house and now in an ALL UNIX house I can tell you that the NT/IIS server will crash NO LESS than 8 times in 6 weeks and require hours to fix/restart. That has been my experience at a company that had 80+ NT servers doing real life web application work.
I used to complain that LINUX/APACHE was no match for NT/IIS because the application platform from Microsoft is simply amazing. I've since seen something called PHP3 and that looks as good if not better than IIS. Does anyone have any experience with PHP3? Is it very powerful?
--Pete
With that out of the way, I do have an observation that I believe is worth consideration.
When Mindcraft came out with their benchmarking tests, this place (as well as their mail server) was flooded with 'what a bogus test!' 'you MS whores!' and the venerable 'go f*ck yourselves!'
However, when these benchmarks come out, and say that Linux beat NT, they are automatically heralded as The Truth. Now, I really do like the fact that Linux has been 'vindicated', but what guarantees do we have that these tests were any less biased than the ones that said NT won?
I know a lot of you will think I'm a heretic, but we need to present an image of being clear-headed observers. The way not to do this is to automatically discount every benchmark that says NT is better while automatically accepting benchmarks that say Linux is better as God's Own Truth.
Just so I can be sure you guys understand, I'll reiterate:
- Linux rules
- Microsoft sucks
- A benchmark is not trustworthy merely because it agrees with your beliefs
Ristoril- pretty much everybody uses one of the configurations c't tested
- pretty much nobody uses or will use mindcraft's setup (raid 0, 400 mbit net connection, 4 way xeon server to exclusively serve static pages)
- like probably no other magazine in europe, c't is renowned for independence, objectiveness, competence
- what is known about mindcraft is that they did another test some time ago, seemingly with a setup advantageous for NT (against Novell Netware)
and:
- the mindcraft test was payed by microsoft, mindcraft conducted the test in a microsoft lab, mindcraft used microsoft email accounts
- the c't test was payed by Heise verlag. And by the way: Heise runs Solaris.
If you are really objective now, what will your conclusion look like?