Key takeaways
- Give every site its own system user, PHP pool and resource limits, so one bad site cannot read or starve the others.
- Size the server by memory first, since PHP workers and the database buffer use most of it.
- Decide your overselling rules on purpose, and let the panel warn or refuse when a plan would exceed the server.
- Test restore, not only backup, before the server is full of customers.
Putting many sites on one server saves money and effort, until one site misbehaves and takes the rest with it. The fix is a few rules applied from the first site, not a bigger server.
Isolate every account
Each site should run as its own Linux user with its own PHP process, so it can only read its own files. In RespireCloud each account gets its own PHP-FPM master per PHP version, running as that user inside its own systemd slice, with open_basedir set to the home folder and symlink checks on every server block. See websites and hosting for the full list.
Limit what an account can use
A limit is what turns isolation into fairness. Plans in RespireCloud carry limits that each module enforces, and an account's memory and CPU become its systemd slice. A plan can say which modules it includes, so a basic plan need not carry mail or containers. The sizing feature covers plans, profiles and the capacity planner.
Size the server by memory first
PHP workers and the database buffer pool are the biggest memory users on a typical shared server. RespireCloud picks one of five install profiles by memory and CPU, from Micro for up to 1.5 GB to Cluster, and applies tuning for that size. In our lab, a 1 GB and a 4 GB server got different worker counts and buffer sizes, and values you set by hand are kept. Disk quotas need a filesystem with quota support, so check yours before you rely on them.
Decide on overselling deliberately
You can sell more than the server holds, but do it on purpose. The panel can let you set rules for disk, memory and CPU at server, reseller and plan level: off, warn or allow, with the strictest rule winning. When a rule is off, a request that would exceed the server is refused with the resource named. The capacity planner shows how many accounts of a plan still fit and which resource runs out first.
Plan for the day one server is not enough
Growth arrives as a slow server, then a second one. Know the path before you need it. You can add modules later in the panel, move accounts with the migrations feature, and add servers in a cluster. For traffic spikes, see the cloud page and spend limits.
Protect the whole box
One compromised site is the common failure. Use a per site firewall, malware scans and updates, and test your backups. Our security page and the storage and backups feature show what RespireCloud does, and what is a server control panel explains the layer that ties it together. Hosting companies can start at for hosting companies, and the pricing page shows the flat price per server.
Questions
How many websites can one server host?
It depends on the sites, not on a fixed number. A few busy shops can use more than a hundred quiet brochure sites. Measure memory and CPU per site and use a capacity planner instead of guessing.
What is overselling in hosting?
Selling more disk, memory or CPU in plans than the server has, on the bet that not every account uses its full share. It can be safe when limits are enforced and you watch the totals.
Should each site have its own PHP version?
It helps. Running a separate PHP pool per account and version lets an old site stay on an old version while new sites move forward, with no change for the others.