One of the key factors in deciding to create and host websites on your own servers is performance. Most systems administrators want to squeeze as many sites and functions into as few servers as possible. This has to be balanced with how well the websites perform for users. If it takes ten seconds to load a page over even the fastest broadband connection, visitors will be unhappy and search engine rankings could suffer. How many sites can you host on a single web server? Unfortunately, there isn't one answer, or even a formula. It depends on multiple factors.
While you could, in theory, host your ecommerce website from a laptop, that would not be a good idea. Web servers are optimized to handle the bursts of activity typical of web traffic, with a large amount of memory, fast hard drives and newer processors. The better the equipment, the more websites your server can host simultaneously.
What Will Your Websites Be Doing?
Aside from hardware, the other primary factor in determining how many websites can coexist on a single server is the type of websites you will be hosting. Different types of websites exert dramatically different loads on web servers. A static website written and served in HTML can coexist with dozens of other websites on the same server, while an ecommerce website running SSL encryption, an application server (such as PHP, ColdFusion, ASP.NET or TomCat) and a database server could tax the very same box to the point where only one website could be hosted with reasonable performance.
When hosting a website yourself, bandwidth is often a concern. Whereas hosting companies typically have multiple, redundant high speed connections, do it yourself hosts often have a single, slower connection. This introduces the new variable of traffic into figuring out how many sites you can host. Since bandwidth is a finite resource, you must consider the aggregate traffic of all your hosted websites. The less traffic your sites get, the more sites you would be able to host.
In the end, there is only one way to determine how many websites you can host, and that is by measuring the output performance of your websites. Usually, this is done via load testing. Continuous load testing usually involves a web-based service that continually accesses your site to measure lag time and load time, whereas on-demand load testing is a test manually generated by software or web service that measures the same output times. Google, Neustar, and KeyNote are all popular testing services, while Webmetrics and HP LoadRunner are popular software applications.
Squeezing the Most Out of What You Have
There are several ways to increase the amount of sites you can host. While they may take some technical skill and/or extra budget, these tips can help stretch your hosting resources:
- Upgrade your hardware: Memory and storage are relatively inexpensive. A small investment in hardware can boost the number of servers you can host.
- Cool your servers: Operating systems throttle down processing power as temperatures increase. A cooler environment means that your processors will run faster.
- Employ caching: If your web or application server allows it, caching can dramatically improve your performance, and thus let you host more websites. By storing commonly accessed data in memory, this dramatically decreases the time it takes to serve data to your web surfer, freeing up resources for the next request.
- Separate roles: If you already host your sites on multiple servers, you can create an individual server for each role, such as one box to serve the web pages, one box to house the database, and one box to handle email. In this way, each server can be optimized for its exact role, stretching your budget and boosting capacity.
The Final Decision
While there isn't one answer to the question of how many websites you can host on your web server, the number is almost always limited by hardware, type of websites, number of visitors or any combination of the three. With the tips listed above, as well as adequate performance monitoring, you will be able to determine your maximum number without subjecting website visitors to painfully slow load times.