August 5th, 2010 Why I Use Ubuntu for web hosting
Put simply, Ubuntu is the easiest to troubleshoot and upgrade, has the best community support, has the superior package manager (apt-get), and finally and most impressively, can be deployed and ready for production in 30 minutes. Here’s how.
Step 1: Download and Burn the Ubuntu Server ISO.
Step 2: Run the Install, select LAMP server when prompted.
Step 3: Add additional needed modules using apt-get.
Total time elapsed (not including downloading and burning): 30 Minutes.
Cost: $0, 1 CDR.
Result: A blank server was converted to a fully functional, configured and live webserver, ready for production use.
In a nutshell, this is one of the main reasons I use Ubuntu for web hosting.
Pretty much that. Overall, I still love Gentoo. Pretty much everything I want on a server works the way I want upon install. Ubuntu there's generally a few more fiddly things I have to configure. The lamest example I have off the top of my head right now is vim as an IDE. With Gentoo when you emerge vim, vim comes with color coding and all sorts of other goodies to make it a useful IDE. Ubuntu you need to install extra packages.
HOWEVER, because of the irritatingly long time it takes to install software (due to compiling, which can be cut down easily with distcc, but you're still compiling) Ubuntu goes on the laptop since most of the things that are important to laptop use work out of the box with Ubuntu.
Ubuntu is also becoming a strong contender for the server. Despite most things working the way I want upon install in Gentoo, the Gentoo team seems more concerned with changing the way their environment should be admin'd rather than keeping packages up to date, or indeed, letting people know the latest and greatest Gentoo approved way to manage a Gentoo install.
That's interesting! Ubuntu is usually well known for the way it pre-configures it's packages to the most common configuration. Perhaps they're trying to move away from that model?
Pre-compiled package management systems make for delightfully error free, fast and easy to troubleshoot installations. Emerge might produce faster running apps, but the difference is largely negligible; especially in this day and age, where a quad core 2.2GHz server costs less then $600.
Long live Ubuntu! :D
Oh yeah. I'm long since broken of the notion that compiling makes shizzle faster. Thinking back on it, and running some ideas through an older test box, I think my issue with Debian back in the day was that of video drivers. If you don't have those configured correctly (and they were harder to configure back then), god help you, 'cause no one else will.
I will say, however, that using emerge to compile in all of my software has, for the past 4 years or so, produced rock solid apps. After I found out which options to not touch in the make.conf file, life was good. But yeah there's really no purpose behind compiling your software unless you're doing some sort of testing. Pre-compiled ftw.
Also, beware the multi-core hype. At a certain point, it's just not worth it.
I've found that 4 cores are incredibly useful if you're running, for example, a number of popular websites and several SQL engines. Two cores for web traffic, one core for MySQL, one core for PostgreSQL, and everything's lightning fast.
For your average setup, however- two cores is perfect. :)
The issue with the multi-core hype is about how information is fed to the cores themselves. I'm pretty sure at the moment 4 cores is going to be the max you want before you start to get severe diminishing returns. If you think about it, all of those cores are fed by 1 bus.
Take for example a dual core processor, because it's easiest to think about. When those cores get fast enough core 1 will be done processing it's information as or before core 2 gets its information. At that point you're no longer multi-processing and may as well have a single core processor.
Now expand that to say a 6 core processor. What are the odds that the first 2 or even 3 cores are going to be slow enough, or the bus fast enough that the computer will be able to feed all 6 cores in time for them to all be processing something at once? Slim to none. And you may as well forget about 12 core processors. Processor cores simply aren't slow enough and buses not fast enough to support that kind of pebcakerey.
What about something like this? Do multi-processor systems fall victim to the same bottlenecks? Do you think it's an issue with the bus as a whole, or is it more an issue at the socket?
What's important to keep in mind is what we're trying to achieve, which is actual parallel processing. Multi-processor and multi-core systems are essentially a hack, but they are a hack that gets us closer to parallel processing. They bring their own issues to the table as well as their own solutions. In the end it's something that the whole computer science community is still trying to figure out how to do. The idea is that in a true parallel processing environment you wouldn't have to make your programs thread safe in order for them to be positively affected by parallel processing. It would all happen in the processor automagically.
What we do know right now is that any time you have two pipes fed by a single pipe, and those two pipes can handle more than the single pipe can put out, you're not using the two pipes to their maximum.
Another oddity in the site. In this text editor, when I hit enter it looks like it's trying to do the correct spacing for another paragraph, but when everything is posted, not so much.
For example, in the editor this looks like a properly spaced new paragraph.
In the editor, this looks like a new paragraph that's a few lines below the previous paragraph. I'm guessing when I click Submit Comment, this paragraph will look like a properly spaced paragraph.
I am attempting to reply to your post with Opera for Mac, to see if this is a browser related issue.
This looks like a normal paragraph.
This should be double spaced (which I believe Wordpress fixes automatically).
Oops. I'm at work so I'm using Firefox atm.
So you're having this problem with Firefox? Interesting. The text box is a plugin that I added to make it easier to format comments. If it's making it harder, I'll get rid of it!
Uhoh. Is there a limit to how deep a thread can go? I can't reply to your latest regarding applications and multi-core processors. :(
The site gets better all the time! :)
(shameless plug) You could also create an Ubuntu VM with LAMP setup in less time with VMware Studio.
Configure virtual hardware, feed it .iso, select packages, even create a repository for applying updates later, tell it where to build itself, and it poops out an ovf or vmx file ready to run.
All of the above was done using VMWare Fusion 3.0, and I skipped the easy install just to make sure the install times were accurate to real life.
We'll be using Hyper V here at work, unfortunately, but at least it seems like a fairly competent clone.
(( Stupid OpenID plugin... totally out of date with WP 3.0.1... ))
I actually did the same thing when setting up both my previous and present systems, with the note that I run more than webhosting on the same box.... :)
((Tell me about it! I'm half tempted to fix it myself, but I know Murphy's Law too well for that.))
I run more then web hosting on most of my boxes, too; but it' usually the primary function of the server. :)
I use Ubuntu Server on all little webserver too! Little Atom 330 box, which I suppose goes to show that Ubuntu is good for the little boxes too ^__^
Ubuntu is good for lots of things. :)