...more recent posts
This post will be the "which server should I buy?" thread. I plan on doing this with a handful of central questions so that I can return with comments as time goes on. Maybe if it gets too long I will then create a "2nd which server should I buy" thread. These big question threads will be linked from the right hand navigation column.
I don't really expect anyone to be interested in all this. But if someone is, that is great, and if anyone can contribute anything to the discussion that would be even better.
Here goes: Which server should I buy?
Given that I can pretty specifically say what the server is going to be used for, I think there should be a fairly definite answer to the question. I just don't know what it is yet.
Here's what it will be used for: web serving. Most likely using Apache (although I guess you have to at least give a look at Lighttp with all the attention it's been getting lately.) Almost all requests will be to PHP scripts generating dynamic web pages by pulling data out of a MySQL database. Additionally there will be a rather large +1 TB store of ~5MB binary files that will be served straight from the file system over HTTP to a limited number of simultaneous connections (I don't need this to scale very high.) So that's all very basic web server stuff. [The reasoning behind this architecture and the various possible debates here will be a different post.]
I was initially very attracted to Apple's Xserves because the Mac OS X is what I know best (and what I build things on locally even though they get deployed on linux.) Plus Apple, and the Apple community, seem a little more friendly in my particular situation which is something like: I don't mind learning a little and even mucking around on the command line, but it's really not a goal of mine to be a sysadmin, so if Apple can supply me the whole widget, with a nice clean way to automatically download and install binaries, I can just worry about Apache, PHP and MySQL (what I like to do,) and not so much about, say, getting non standard ethernet drivers to compile under linux, or trying to set up DNS without a GUI. In fact, I don't mind paying a little more for someone else (Apple) to make these things easy for me.
Upon further research, however, it seems there are some serious performance questions (they may not actually be problems, but they are certainly questions right now) concerning MySQL. And maybe even Apache as well. Ouch. That's exactly what I want to do. OS X Server and the G5 chip (IBM's 970) are amazing at a whole host of tasks. Unfortunately it seems like the exact thing I need to do isn't one of them.
So while I haven't made my final decision yet, I feel pretty sure -again given specifically what I want to do - that Linux is the OS you are "supposed" to use. This basically means that the programs I need to run are built and optimized with the linux platform in mind. On the other hand, even if some of the more outrageous claims are true, and MySQL and Apache performance really are an order of magnitude slower on OS X, it might be the case that it is still "good enough". I'm not building ebay here. I think we run on a 700 mhz Pentium right now and I think performance is acceptable. (On the other other hand, I want room to grow.... )
So OS X Server vs. Linux is one debate. And then if Linux wins that debate then there is the secondary "which distribution?" question.
I'll get into specific configurations and pricing in the comments.
Even though the rumors were flowing over the weekend I was still stunned at yesterday's news that Apple is dropping IBM (and their G5 processor,) and beginning a 2 year transition to Intel x86 chips.
According to Jobs, IBM couldn't deliver the speed, and more importantly couldn't deliver the speed at low power that Apple needs to make the kind of small form factor very quiet machines it loves to make.
Here are a few of my initial thoughts:
For the average end user this makes little real difference. The Mac experience is primarily the experience of the Mac OS, and that isn't going to change.
Most present applications will run unmodified on the new machines thanks to a software emulation layer. Apple is very good at this sort of thing. Still, it's clear they are hoping that developers will do a little bit of work to recompile their apps to take full advantage of the new architecture. Adobe has announced full support which is very important to the Mac community.
You won't be able to buy OS X and run it on a Dell (or any other generic x86 machine.) The Mac OS X will continue to run exclusively on Apple hardware.
Although they won't be officially supporting it, Apple VP Phil Schiller stated that they won't do anything technical to preclude you from running Windows (or, one presumes, Linux) on the new Apple hardware. This might have some interesting benefits for Apple's "switcher" efforts. Now a windows person can buy a Mac and have the ability to switch back to Windows if they don't like it.
This moves seems to confirm that the Cell processor (variations of which will drive the Sony Playstation III and the new Microsoft XBox,) is not a viable desktop processor (or else, presumably, Apple would have stayed with IBM and that future.)
There could be something more here than meets the eye. It is at least possible that the switch to Intel has something to do with Hollywood and DRM. We know there is DRM in these new Intel chips. So possibly Jobs is trying to work out something like the iTunes music store for movies with Hollywood, and they simply won't do it unless it runs on these Intel chips. This is pure speculation at this point, but maybe something to keep in mind.
I shudder to think of what this is going to do to sales of present Macintosh computers, especially going into the Christmas season when the first of the new machines will be right around the corner (shipping early 2006.)
For me personally this greatly complicates the already complicated decision I need to make regarding my next server. I can't wait for the new machines (which I'd love to do since being able to wipe the Mac OS and install Linux on x86 is exactly the fall back position I would be most happy with.) But do I really want to drop (for me) a huge amount of money on a last generation G5 server? Is that really a machine I will be happy with in 4 or 5 years. My provisional answer is no, which would cause me to just buy an x86 now and run Linux.
But like I said, I don't think this is really a big deal for the average user. The software is going to stay the same. The Mac will still be the Mac even with Intel inside.