This document discusses Smartstack, a solution for service discovery and load balancing in distributed systems like Docker. It addresses problems like dynamically wiring dependent microservices and handling failures gracefully. Smartstack consists of Synapse, which generates HAProxy configurations for discovery, and Nerve, which registers services and checks health. Ambassadors provide simple connections for containers. It aims to reduce complexity compared to alternatives while working on traditional infrastructure, VMs, and Docker.