Gradwell Internet for business people

01225 800 123

 

Our Shared Hosting Platform

This page contains technical information about what our shared hosting platform is and how it works.

High Level Architecture

At the highest level, our shared hosting platform looks like this:

Web Hosting Platforms

This architecture provides a highly-available, resilient and scalable service that also allows us to add support for new web hosting products (e.g. PHP 5.3, Ruby on Rails) in the future without having to force customers to upgrade if they do not want to.

Public IP Addresses

Websites hosted at Gradwell are available via the following IP addresses:

  • PHP 4 Clusters: 193.111.200.151
  • PHP 5 Clusters: 195.74.61.93

Each of these IP addresses are routed through to the pool of load balancers.

Load Balancers

All network traffic to our web servers goes through the load balancers first.

We have a number of load balancers in the pool. Each load balancer is a Linux virtual machine running Linux HA. These virtual machines sit inside our VMWare ESX infrastructure.

All HTTP traffic to our shared hosting platform goes through our combined load balancers. Each load balancer then forwards the network traffic on to the appropriate Squid Proxy pool, based on the IP address that the request comes in on. If any machine in the Squid Proxy pool is unavailable for any reason, the load balancer will route the network traffic to one of the remaining available Squid Proxy servers.

Squid Reverse Proxies

We have two pools of Squid Proxies - one for PHP 4, and one for PHP 5. Each proxy is a Linux virtual machine running Squid. These virtual machines sit inside our VMWare ESX infrastructure.

The Squid Proxies accept incoming traffic from the load balancers, and forward it on to the individual machines in the relevant PHP cluster, based on the address (Fully-Qualified Domain Name) of your website. If individual machines in the PHP cluster are unavailable or unresponsive for any reason, the Squid Proxies are able to detect this and automatically retry the web request with another server in the same cluster.

PHP Clusters

Gradwell supports a number of different versions of PHP. Each version of PHP (currently PHP 4.3, PHP 4.4 and PHP 5.2) has its own dedicated cluster of servers. This allows us to add support for new versions of PHP in the future without forcing you to upgrade your websites.

You can find specific information about each PHP cluster at the pages below:

Shared Infrastructure

Our different PHP clusters all share three key pieces of common infrastructure:

  • MySQL: Gradwell has added support for a number of different versions of MySQL over the years. Each MySQL server is available to all of our PHP clusters.
  • /home Fileservers: The web pages for each website are stored in our customers' home folders. These home folders are stored on the /home fileservers, and mounted onto all of our web servers via NFS.
  • shell.gradwell.net: Use shell.gradwell.net to upload your websites and view the traffic logs for your websites.

Comments

 
 
Show pagesource | Old revisions | | |
 
 
webhosting/sharedhostingplatforms.txt · Last modified: 2011/11/11 08:48 (external edit)