Tag

load balancing Archives - AWS Managed Services by Anchor

Weighing the costs of High Availability

By | Company News, Technical | No Comments

We’re rounding out our series on high availability with a little discussion on the benefits of HA versus the inherent costs. If you’ve been keeping up with the previous articles you’ve probably gotten the impression that it’s a lot of work and easy to get wrong; you’d be correct. That said, HA definitely has its place, so it’s worth arming yourself with the knowledge to assess when it’s appropriate. Costs HA systems have obvious financial costs, but there’s a lot more to it than just money. We’ll talk about these first because we think it’s important to have these in mind when you assess the benefits of going down the HA path. The pattern you’ll notice is that almost everything boils down to complexity. Complexity is your enemy when building…

Read More

Highly available infrastructure for your own website

By | Company News, Technical | No Comments

Every site is different, so this isn’t so much a tutorial as some things to watch out for. We’ll take a reasonably representative database-backed site and talk about what changes when we make it highly available. The site For the purposes of demonstration we’ll use Magento, an e-commerce website written in PHP with a MySQL backend. As well as exemplifying the popular LAMP pattern, Magento allows for extensions that uses extra software components, which also need to be taken into consideration in a highly available setup. It’s worth noting that these notes apply even to vastly different systems. Taking some big customers that we’ve worked on as examples, Github is effectively a Rails app and Testflight’s core is mostly Django – the problem is approached in the same way. Types…

Read More

Squaring off with your high availability terminology

By | Technical | No Comments

Following our previous post on the basics of high-availability services, it occurred to us that there’s often some confusion about the use of certain terms and phrases. We’d like to clear that up before pressing on, and hopefully reduce some of the headaches for people in the long run. We’re dealing with a few closely related terms here, with important differences in meaning: High availability Load balancing Linux HA High Availability (HA) is a concept and a goal. How you achieve it is up to you, but the implication is that it involves more than one server, because a single server is a single point of failure. Having a hot-standby server to takeover in the event of a failure is one way to get HA. For certain types of services…

Read More

Load balancing at Github: Why ldirectord?

By | Technical | 14 Comments

Some comments on Github’s blog post “How We Made Github Fast” have been asking about why ldirectord was chosen as the load balancer for the new site. Since I made most of the architecture decisions for the Github project, it’s probably easiest if I answer that question directly here, rather than in a comment. Why ldirectord rocks The reasons for Github using ldirectord are fairly straightforward: I have a lot of experience with ldirectord. Never underestimate the value of knowing where the bodies are buried. In ldirectord’s case, there aren’t many skeletons, but “better the devil you know” is a valid argument. If you’ve got strong experience in making something work (and you’ve managed to make it work), and you don’t have a lot of time for science experiments, then…

Read More