BackgroundYelp is an American multinational corporation headquartered in San Francisco, California. It develops, hosts and markets.
ChallengesYelp believes in the value of Micro services. They are really easy to use, indivdually deployable. and great for site reliability. But what they realized was that now they ended up with an architecture where things change a lot of the time, introducing more complexity. Now they have different deployment schedules, and 400 people working on several services between them.
While each application was running, they needed to be able to change what services the application was talking to for failover. Without having to top the world and rebuild their application containers.
SolutionThey began by deploying a HA Proxy on each of their servers so that apps could connect to the load balancer on the local host. It worked well for their metal and VMs. Using Docker containers gave them the ability to have a container that runs their HA proxy, then use the “- - link” functionality to link containers together. Now their apps become more agnostic, not having to know don’t whether or not a HA proxy is there. They no longer have to worry about their application’s backends breaking.