Some basic questions about web servers

I have a few questions about what’s important in a web server, because the things I have learned piecemeal over the years haven’t come together in my mind to form a clear understanding.

In all cases, I’m referring to a dedicated server, not shared hosting of any kind.

  1. For running a fairly basic website that isn’t doing incredibly complex or unusual tasks (the most complex being running a CMS like Drupal), is very much RAM needed? I pack my computers with RAM because I have raging ADD and I always have 30 applications open, but I’ve heard that running a webserver isn’t anywhere near as taxing. Yes, no? In terms of webservers, what kinds of processes are RAM hogs?

  2. Bandwidth
    What considerations should there be? How much does the actual webserver’s speed affect the webSURFER’s speed, assuming they have standard commercial broadband?
    If you know anything about running a Mac OSX server vs. straight Linux/unix, I have a lot of questions there, because I keep thinking I have a bunch of computers lying around doing nothing, I’m very comfortable working with Macs over anything else, and if I could just sort out the process and cost of having sufficient bandwidth available for incoming traffic, I think I might like to just swtch over to Mac completely.

I’m sure other questions will come up.

Thanks for your time and help in advance.

  1. No, not very much is needed. More RAM will be helpful for computationally-intensive web applications, but a CMS generally won’t require much. 2-4GB will handle a medium-sized site just fine.

  2. There’s a distinction to be made by bandwidth (the amount of data per unit of time your server can send and receive) and server speed (how fast the computer runs.) You can always upgrade your bandwidth plan if traffic grows. If you’re serving something image-heavy with lots of video and whatnot, you will need appreciably more bandwidth than if you’re just serving text articles.

Unless you’re saturating your bandwidth, you would benefit more from focusing on ensuring that your web application is as fast as possible. That means running on good quality hardware, eliminating database bottlenecks, ensuring you have good caching, etc.

I agree that it is not a heavyweight thing.

For a while I was running Wordpress on Ubuntu on an ancient Sony from 2001. It performed quite nicely for my needs.
If you want to try something like that, you might want to look into Turnkey Linux—they have several very interesting turnkey Ubuntu installs that transform your aging machine into a dedicated appliance with nothing more than a fifteen-minute CD install. I have used Turnkey for a Mediawiki server. They have Drupal and others as well.

Are you certain you want to host your own web site on your home hardware?

I say this because it is so easy to have someone else do it for a few dollars a month. You don’t need to worry about the security of your setup or the fine print of your TOS with your ISP.

If you are going to run it from home, consider the following:

  • Does your ISP have bandwidth caps?
  • Is your connect symmetric or asymmetric (e.g. 8 MB down, .5 MB up)
  • Will they smack you down if you run a server (TOS fine print)?

Adding to what friedo says:

  1. Assuming you’re not using a separate database server, the database and caches are likely to be the biggest users of memory. If you’re not running memcache, just the database. If your database indexes are too large and the available memory too small then you can expect performance issues.

  2. There are any number of things that affect web page speed; bandwidth is just one of them. You pretty much have to get it wrong first, then fix the problems one by one.

It sounds like you’re talking about building a web server and running it on your own premises, correct? That’s a fine way to learn, as long as your expectations are reasonable. There’s a whole lot more involved in web hosting these days than just a server and router, and the kind of performance and reliability you get from running your own server won’t be in the same league as a good commercial host.

That I have not found this to be the case is my issue.

And I’m talking about a commercial site, not something tiny and personal. Not complicated, but devoted to serving paying customers. Lots of images and video, jsut not terribly complicated.

What haven’t you found to be the case - the price or the ease?

Hosting a commercial site with paying customers on your own premises sounds like a terrible idea to me.

A VPS is inexpensive and should suit your needs. Use a CDN for the video and images if needed.

Which web hosts have you explored?

Since you have a lot of media, you’ll need a lot of bandwidth and a high monthly cap – these usually only come with expensive business-level ISP packages, not your standard home user plan. And even if you insist on hosting most of it at home, I strongly second tellyworth’s suggestion of using a CDN to host the images and videos.

Your outgoing bandwidth directly affects how fast your customers can download. “Broadband” these days generally means anything from 1Mbps to 50Mbps down, but home connections are usually limited to 256kbps to 1mbps up… without a bandwidth upgrade, such a connection wouldn’t even be able to satisfy one single customer’s full download speed.