How much Web server do I need?

Several years ago, I went into some detail on why I think you should have your own website if you work in or want to work in technical support. Industry professionals expect you to have a website, and you can learn a lot from creating and maintaining your own.

At some point, you may decide you also want to run your own Web server. Perhaps you will opt to use an old desktop system in your old home to do the heavy lifting, or maybe you’ll sign up for a virtual private server like the ones that I use. Either way, it’s very possible that you will be running some flavor of Linux as your server’s operating system.

This leads to a natural question: how much Web server do you really need? There is an excellent chance that the answer is “a lot less than you think.” By sharing my own experiences, I hope to help you make an educated decision.

What’s your goal?

The first thing you have to nail down is exactly what your needs are. If you intend to host a ton of high-definition videos, you may need a beefy setup, but if your goal is simply to run a blog or two, run your own mail server, or set up a simple e-commerce site—or maybe even do all of the above—then you’re not likely to tax even a server with relatively low resources.

I had already been tinkering with websites for years, first on free shared hosting and then on paid shared hosting, before I took the plunge into managing my own virtual servers. I had a rough idea about what sort of traffic I’d need to be able to handle—a few thousand visitors per month—and I knew I would be hosting scans of material from my stamp collection on the oldest of my websites, Philosateleia. In addition, I wanted to start managing my own mail server for the learning experience.

What I did

In the interest of getting experience with a common server configuration, I opted to run a LAMP stack. I also decided I would like to have two separate servers: one for my websites, and one for my mail server.

I’m using Ubuntu Server, which is command line only, on a pair of virtual servers. Each has 1 GB of RAM and 20 GB of disk space as well as unlimited bandwidth, but quite frankly, unless you’re streaming video or your site becomes the next Amazon, the amount of data transfer offered with any dedicated hosting plan should be more than adequate for any traffic you’re likely to see.

My Web server is running a couple of websites plus this blog. As I mentioned earlier, we’re talking a few thousand visitors per month, which isn’t bad considering the nature of my sites. My email server with maybe a dozen or so email accounts on it is running a combination of Postfix, Dovecot, and SpamAssassin. (My email server was previously running ClamAV, which I ended up uninstalling; more on that in a bit.)

And you know what? The servers I described above are more than adequate for all of the above, and I suspect they would probably be adequate for you. Running on what are essentially bargain basement virtual private servers, I have not encountered any problems with resource demands, except…

A note on ClamAV

When I first set up my servers, ClamAV ran flawlessly, but as the years passed, I started seeing emails that had not been scanned for viruses. A bit of research and poking around in log files led me to the realization that my server didn’t have sufficient resources for ClamAV to run.

According to ClamAV’s documentation, a minimum of 1 GB of RAM is recommended in order to run it. My server just does have that, but with other packages running, it’s apparently not enough for ClamAV to run reliably.

I opted to simply uninstall ClamAV from my server. If you’re determined to have your emails scanned for viruses, I suggest going with a minimum of 2 GB of memory.