Open-Source Service Discovery tools

Service discovery is a key component of most distributed systems and service oriented architectures.
The problem seems simple at first: How do clients determine the IP and port for a service that exist on multiple hosts?
This problem has been addressed in many different ways and is continuing to evolve. Let's look at some open-source or openly-discussed solutions to this problem to understand how they work. Specifically, let's look at how each solution uses strong or weakly consistent storage, runtime dependencies, client integration options and what the tradeoffs of those features might be. 
We’ll start with some strongly consistent projects such as Zookeeper, Doozer and Etcd which are typically used as coordination services but are also used for service registries as well.
We’ll then look at some interesting solutions specifically designed for service registration and discovery. We’ll examine Airbnb’s SmartStack, Netflix’s Eureka, Bitly’s NSQ, Serf, Spotify and DNS and finally SkyDNS.

Details: http://jasonwilder.com/blog/2014/02/04/service-discovery-in-the-cloud/

Comments