A big constraint in optimizing hosting infrastructure today is a problem that has been around since hosting early days, when CGI scripts first appeared – that a single website or tenant on a shared server can cause the server to slow down or even crash, affecting hundreds of your customers simultaneously. This is an ongoing challenge for all hosting providers to face.
It is becoming more common for a typical web server to see more complex and diverse websites with many different configurations, web applications (like blogs, shopping carts, forums) and software loaded onto it. This ever-increasing complexity sets the stage for one single, badly configured site or a site that suddenly gets popular, to bring down the whole server. The downed server then causes all sorts of problems not only in getting the server back up and running, but also to find the offended site to make sure it does not happen again.
At CloudLinux, we’ve talked with a lot of hosting providers who know this problem all too well – and they have offered up a few solutions, but none that seem to solve the problem completely.
We’ve heard two alternative solutions mentioned that can solve this problem – but neither one is ideal in that is does not prevent problems or transfer costs to the end user. The two options are moving customers up the server value chain to VPS or using clustering.
While VPS seems like a good solution, it creates and adds major management issues as each individual VPS has to be managed, updated and configured almost like any standard server. This solution is not practical for many shared hosting customers who just want a website too. You also can’t put a lot of VPSs on a server, which in turn increases web host’s management and hardware costs – which is then transferred to the customer or worse, eaten by the web host!
The second option some web hosts have suggested is clustering. Clustering can provide high availability and load balancing capabilities using redundant nodes or by sharing workloads across multiple computers. It can provide more resources to tenants; however, the configuration of clustering STILL makes it as vulnerable to a resource hogs and other website configurations issues as a single server setup. Clustering does not protect the server in any way from resource demands that can overload the system. It just provides more resources.
The most popular option seems to be to limit the number of shared hosting accounts you put on one server – which typically results in using no more than 60% of the server! That is like having an apartment building with 100 apartments and only renting, at most, 60 – leaving rent money that you could be making on the table!
If you want to maximize the efficiency of your servers and prevent one tenant from being able to slow down or take down your entire server, you have to have control at the individual user level. CloudLinux does just that – provides the hosting provider the tools to control processes at an individual level. This gives system admins the ability to not only maximize the server efficiency, but also find the offending sites that are causing the issues to begin with.
Download CloudLinux 5.5 and see for yourself what it can do…It can double the density of your shared hosting servers while increasing stability and performance.