I'm trying to understand how to use the VPS and how to use the resources I have.

I need to run several webapps, each on a separate domain. I have 1 dedicated server. Should I split it to different VPS and have each webapp on a VPS or is that a misuse of what VPS are meant for?

The problem I see with using VPSs is that the server environments for each webapp is going to be isolated, but all the webapps use a similar group of libraries. Under a no vps environment, all the apps share the libraries, but under vps, I would have to copy these libraries to each vps.

3 Answers 3


If you allocate a static memory size for each VPS (like 512MB), remember there's no way the different apps can share this. Some virtualization hypervisors can handle dynamic memory allocation, but it can be iffy.

I think you should evaluate the cost of memory, setup, and how much you trust the code behind your webapps. If you have them all on the same primary server, you'll have far less overhead (only one kernel, webserver, and supporting apps running).

If you have infinite resources, virtual machines can give you a ton of flexibility, but otherwise you're going to greatly complicate your setup (you must create and manage X servers instead of 1)

There's also nothing wrong with trying it both ways and comparing performance + resource usage.


If you are hosting the webapps for different customers then I would suggest using the VPSes to host different apps. It would separate the customer data and also prevent one customer from hogging all the resources.


This depends entirely on traffic and bottlenecks. Web server software such as Apache is perfectly capable of multiplexing between sites (Virtual Hosting) without any problems on a single VPS, provided that you have enough RAM and CPU to handle it.

Is the VPS overloaded? If so, you may want to consider moving the highest traffic sites onto their own virtual machines. If not, absent a security concern, running them all on one should present no problems.

If your concern is keeping code (you mentioned libraries) in sync on production systems, you may want to look into using a version control system and then using an automatic deployment script to keep the code on the machines up-to-date.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.