How To Choose The Best VPS Hosting – Virtuozzo Or OpenVZ Vs Xen Vs KVM

Most people start out with shared hosting when they first launch their online business. After all, shared hosting is dirt cheap and it does the job well when your site doesn’t get a whole lot of traffic.

In fact, I ran my online handkerchief store on Bluehost and stayed there for over two years paying only $6.95 a month (Today, Bluehost is even cheaper at $4.95/month).

Photo By Ivanpw

But eventually, your website will outgrow your shared hosting account and the next logical upgrade is to signup for a VPS webhost.

What Is VPS Hosting?

First off, VPS stands for virtual private server which essentially means that a single machine is partitioned into separate servers that each act like a dedicated machine.

While VPS hosting is very similar to shared hosting in that multiple accounts are hosted on a single machine, a VPS webhost will guarantee you dedicated resources for your website and isolate your sites from others that are on the same box.

Especially when you run an ecommerce store, it’s absolutely essential that you maintain a responsive website otherwise you could frustrate customers and lose out on potential business.

My Upgrade Story

When I first upgraded to a VPS webhost from Bluehost shared hosting, I blindly signed up for a VPS that one of my friends recommended. And while I won’t name names, I stayed with this same VPS webhost for several years until it completely crashed on me late last year which prompted me to search for another option.

But here’s what’s funny about webhosting. You can never know whether your webhost is good or bad until you switch. So unlike last time when I blindly took someone else’s advice, I decided to do my own research and to fully understand the different flavors of VPS.

And boy has it been eye opening! I used to think all VPS’s were created more or less equal and that you could always trust the numbers that were given to you. But that is not always the case!

For example, if a VPS host promises you 1GB of dedicated RAM and 1TB of bandwidth, that’s exactly what you should get right? Well in reality, the answer isn’t always that simple and it largely depends on what type of VPS virtualization is used on the server.

Don’t worry, this isn’t going to be a technical article. But I will teach you what to avoid when shopping for the right VPS webhost for your business.

Avoid VPS Hosts That Use Virtuozzo And OpenVZ

A virtual private server is essentially a single machine that is sliced into distinct servers that can be sold individually. And the idea is that you can get “dedicated server” like performance without actually paying for a dedicated box.

The important thing to realize however, is that there are many different ways to slice up the machine and this isn’t always obvious to the end user. There are 3 common virtualization solutions on the market today for VPS web hosting, Virtuozzo, Xen and KVM.

Overall, it’s not essential to understand the ins and outs of the 3 but you should always ask the VPS provider which virtualization technique they utilize for their servers.

Why? It’s because Virtuozzo is the least predictable of the bunch and you should avoid signing up for any VPS that uses Virtuozzo if you want your server to be fully isolated from the other accounts on the same machine.

In other words, you don’t want other rogue websites on your same machine to be able to bring down or affect the operation of your own sites.

My Experience With A Virtuozzo Based VPS

The first VPS webhost I signed up for used Virtuozzo and the best way to explain why it sucks is to provide you with some real examples and experiences.

Note: There is also an open source variant of Virtuozzo called OpenVZ. Both have the same weaknesses.

Back when I was on Virtuozzo, my server used to randomly slow down during certain parts of the day even though my websites were not receiving much traffic. And while I found this odd, the sysadmins used to tell me that my sites were the ones causing the slowdown due to excessive “background processes”.

Does this sound like BS to you? I must admit, it did set off my BS alarm but at the time I wasn’t too stringent about speed and my sites rarely went down. I think the main reason I didn’t complain was because I came to these guys straight from shared hosting and my VPS was still light years faster than what I had in the past.

It wasn’t until I did some research that I actually figured out why my sites would suddenly slowdown and spike in server load. The culprit was Virtuozzo and the way it handles memory allocation.

(Before I continue, I just wanted to give a quick shout out and thanks to Larry Ludwig of HostCube for answering all of my VPS hosting questions!).

Why Virtuozzo Is Not Well Suited For Mission Critical Sites

In order to explain why Virtuozzo has poor isolation of different accounts on the same machine, here’s a very basic example.

First of all, when a Virtuozzo VPS plan says that you get 512MB “guaranteed” RAM and 1024MB of “burstable” RAM, it means that you are “allocated” up to 512 MB of RAM to your account and up to 1024MB of extra memory to use as needed as long as there are memory resources available.

It’s the “burstable memory allocation” that screws things up for Virtuozzo users. Here’s why…

Let’s say you have 2 users on a machine where each user gets 512MB guaranteed RAM and 1024MB of burstable RAM and these 2 users are hosted on a machine loaded with 1GB of physical RAM.

512MB guaranteed + 512MB guaranteed = 1GB RAM. Sounds ok right?

But let’s say one of the users(user 1) decides to run a memory intensive program that requires 900MB of ram. Meanwhile, the other user (user 2) is pretty much idle and is only using 100MB of ram.

In this case, user 1 would get allocated 900 MB of ram leaving only 124MB left in the system. However, if user 2 later gets a surge in traffic and requires 512 MB of ram…

Guess what? User 2 is out of luck because user 1 is using most of the RAM on the machine. As a result user 2′s site will either crash or experience a severe slowdown while memory is shuffled around.

In general, Virtuozzo is very zippy if the webhost puts enough RAM into the machine to cover the sum of all burstable memory in the system or if there are no rogue websites on the same box.

However, given that webhosting is a very cutthroat business, it’s very common for Virtuozzo hosts to only load a machine with the minimum “guaranteed” memory allocation.

Therefore, when there are multiple rogue websites on the same box using the same memory resources, your own websites could go down through no fault of your own!

The Alternative – KVM and Xen

While it may sound convenient to have access to “burstable resources” when your website gets overloaded, in reality it makes your website much less predictable. In a Virtuozzo VPS, the memory allocation is fuzzy which means that it’s possible that you may run out of memory when you need it if other users in the system are being greedy.

That is why it is much better to run your mission critical websites on VPS servers where you have fully dedicated resources which is where Xen and KVM come in. In a Xen or KVM based VPS, all RAM and processor resources are completely dedicated which means that they are always available to you when you need it.

Therefore a Xen or KVM based VPS will behave like a true dedicated server with a near complete isolation of user accounts. The only downside is that a Xen or KVM based server will perform slightly slower than an equivalent Virtuozzo setup. But the upside is that no one else will be able to bring your websites down.

Conclusion

Then main point of this post is make sure you understand that all VPS hosting is not created equal. If you run websites that make a significant amount of money on a daily basis, it is in your best interests to choose a VPS based on Xen or KVM.

Recently, I switched all of my websites over to Storm On Demand which is based on KVM and they have been excellent so far! If you are currently on Virtuozzo, I encourage you to make the switch.

Ready To Get Serious About Starting An Online Business?


If you are really considering starting your own online business, then you have to check out my free mini course on How To Create A Niche Online Store In 5 Easy Steps.

In this 6 day mini course, I reveal the steps that my wife and I took to earn 100 thousand dollars in the span of just a year. Best of all, it's absolutely free!

Give Me Access To The Free Course!
Enter Your Email Address:

Similar Posts

Have you read these?

11 thoughts on “How To Choose The Best VPS Hosting – Virtuozzo Or OpenVZ Vs Xen Vs KVM”

  1. Hey Steve, thanks for the info. I’m not up on all the technical side of hosting so it’s good to learn a bit here and there.

    I’m still on shared hosting and can’t justify the expense of VPS right now but as I continue to grow I’ll look to switch at some point. Is there a general rule of thumb for what kind of traffic levels would require VPS?

  2. I switched to Storm on Demand a few months ago now as well, and I’ve been very happy with them. It’s good to know that their VPS is based on something a bit better than the Virtuozzo based server I was on previously. The performance has certainly been better.

  3. Hey Steve,

    I have bookmarked many of your posts (including this one) and come back to them for advise when I need it.

    Right now I am on Bluehost and my site loads very slow. Although I have only a handful of subscribers, I am doing a marketing blitz to push the site soon and need something reliable.

    To go back to Mike’s question above, what is your recommendation in a situation such as mine? I don’t mind spending $20 or more per month for a dedicated host, but it will take valuable time out of my current schedule to move everything. What kind of traffic justifies a move?

    Thanks,
    Kay

    1. Hi Kay,

      I just took a look at your site and based on your traffic levels, shared hosting should be adequate. The reason your site is slow has something to do with WordPress and most likely with the plugins you have installed.

      For you, I would recommend a service called WP Engine. These guys specialize in wordpress hosting at a reasonable cost.

      1. Thanks Steve, I will check them out!

  4. Congratulations, keep up the great work.

  5. Geoff says:

    I’m a little confused as to the full logic in this – hopefully you can explain further. :)

    Virtuozzo has both burstable and guaranteed RAM I agree.

    Lets say a server has 2 users, each with 512MB guaranteed RAM and 1024MB of burstable RAM.

    To have 2 users with 512MB of guaranteed RAM, = the server must have 1024MB of RAM as a minimum (many good web hosts will of course have more, so lessening the risk).

    Assuming they have only the minimum the flow will go as follows:

    1) Your site is happily using 100MB of RAM.

    2) Site 2 suddenly needs an extra 512MB of RAM, and uses the full burstable allowance (1024MB – the 100MB your site is using = 924MB).

    3) Your site suddenly needs to use 512MB of RAM, and so requests it. Virtuozzo will drop the additional 412MB of RAM site 2 is using, and allocate you the full 512MB of RAM.

    4) Both sites will now be running at 512MB of RAM.

    Your site, using under its ‘allocated allowance’ will have priority over the site using it’s burstable allowance, and will get the RAM requested. Indeed this is the whole point of the burstable RAM.

    Or am I missing something obvious here?

    1. Once memory is allocated, you can’t just rip it out from under another application otherwise it will crash. It needs to be released when the process is complete. If it is killed then the site won’t function properly.

  6. Nice post, Even I mostly go with XEN when choosing VPS plans.

  7. This is a nice article. Simple to understand, good order of presentation and is very informative. If anyone has any doubt about VPS Hosting just go through this. Thank you for sharing this wonderful article with us.

  8. Great write up. Just forwarded this URL to a client who’s hosted by a host with Virtuozzo. I’ve always recommended LiquidWeb (Storm On Demand) as well. Thanks again for the very complete explanation.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>