Geographic Load Balancing and Disaster Recovery Best Practices for Global Websites

August 21st, 2013 by - 8,315 views

Technological World

If you’re running a global website, you’ll want to reduce the latency for customers around the world. GoGrid offers the global infrastructure and robust network to support this setup. With Geographic Load Balancing, GoGrid can also improve performance to your website from around the world. Here are recommended best practices for building a reliable, high-performing global website.

Deploying the Correct Infrastructure Setup

Global websites still require local infrastructure to be truly effective in reducing latency. GoGrid has data centers around the world where you can deploy infrastructure to better serve your customers. Deploy infrastructure to the Western United States (in our US-West-1 data center), Eastern United States (in US-East-1) and Europe (EU-West-1). Although your specific configuration is unique to your setup, you’ll most likely have database and webservers in each of these data centers.

In addition, you’ll want to keep your servers in-sync. One option between US-West-1 and US-East-1 is to use Cloud Link, a dedicated, private line between our data centers. This connectivity makes synching your servers secure and easy. Once you have your back end in place, you’ll want to configure your front end.

Geographic Load Balancing

With your infrastructure in place in our data centers, you’ll have the ability to reach your customers around the globe. Using Cloud Link and/or a VPN will ensure your servers are securely synced and that you’re presenting consistent data to your customers. But how will you make sure your customers will reach the servers with the least amount of latency? Having all this infrastructure in place and then sending European customers to the US-West-1 data center doesn’t make for a great customer experience. The answer is to enable GoGrid’s Geographic Load Balancing.

Using VeriSign’s robust network backbone, GoGrid is able to offer a highly distributed and reliable service to our customers. Our Geographic Load Balancing service uses DNS, so you’ll need to assign your domain to our service. Once you have your domain registered with GoGrid, you can enable Geographic Load Balancing,  and then assign certain regions of the world to particular servers. By default, we assign the western and midwestern states to the West US view, the southeastern and north eastern states to the East US view and all of Europe to the Europe view. You can assign each of these views to a server in the corresponding data center. For example, the West US view has Server A from US-West-1. Any location not defined in the views will be routed to the default view (which you can assign).

Once you have servers associated with each of these views, Geographic Load Balancing does the rest. If a client is detected to originate from one of the locations defined in the view, their traffic will be routed to the servers associated with that view. For example, a client in Spain connecting to your domain will be sent to a server in our EU-West-1 data center. Without Geographic Load Balancing, this client would be routed to whatever server was listed underneath the domain (with no guarantee that it would be anywhere near their actual location).

Geographic Load Balancing requires the use of DNS and is charged separately. There’s a monthly charge for each domain on which you enable this service. DNS has a separate tiered charge model.

Geographic Failover

You also have the option of enabling Geographic Failover. This option is tied to the individual records. Let’s say you’ve configured all your web servers and associated them with a view. But what if one of those servers fails? For an additional charge, you can configure a failover server that would take over in case the primary server stops responding. You can assign a server in the same data center or even a different GoGrid data center. The Failover service runs a periodic health check to determine if the primary server is responding. If it doesn’t get a response, it will automatically failover to the secondary server.

This is one way to ensure disaster recovery in the event of data center failure. Because this service runs outside the data center, if one of the data centers go down, the service will continue to run; if you set your failover server to a different data center, it will automatically send traffic to that server. You can enter any number of failover servers that are only active if the server higher in the hierarchy stops responding to health checks. GoGrid currently support HTTP and Ping health check options that run on a 5-minute interval. These health checks are run from five distributed locations around the world. All five locations must agree the server is down before the Failover is activated. Support will contact you if you want to failback your website to the primary server.

The Best of Both Worlds

You can configure Dynamic Load Balancers as the endpoints for each view. This is a powerful approach that combines the full load balancing features of the Dynamic Load Balancer (multiple algorithms, persistence options and health checks) for your local web servers with the latency reducing and out-of-band features of Geographic Load Balancing. If you set a Dynamic Load Balancer as the endpoint for your US West view, then traffic in that region will be sent to that Load Balancer. It can then distribute traffic to any number of real web servers, managing the load and maintaining local failover. Traffic from other regions of the world can be sent to Dynamic Load Balancers in different data centers. You can also configure Dynamic Load Balancer in alternate data centers as failover servers, to manage for failover in the case of a data center failure. You can configure your Dynamic Load Balancers from our management console or RESTful API. Once those are ready, you can contact Support to configure Geographic Load Balancing and Failover.

Ordering the Service

Work with Sales to request Geographic Load Balancing and Failover. They can review your options and the cost to use the service. You’re also required to assign your domain to GoGrid’s DNS. The first 1 million queries per month are free, and you’re charged a tiered rates for queries above this amount. Because GoGrid manages these DNS-based products for you, contact Support if you need to make any configuration updates or changes.

The following two tabs change content below.

Rupert Tagnipes

Director, Product Management at GoGrid
Rupert Tagnipes is Director of Product Management at GoGrid who is responsible for managing and expanding the company’s multiple product lines. His focus is on leveraging his technical background and industry knowledge to drive product innovation and increase adoption of the cloud. He has extensive software product experience at technology companies in Silicon Valley solving data analytics and cloud infrastructure problems for customers across multiple industries.

Latest posts by Rupert Tagnipes (see all)

Leave a reply