DieCast: Testing Distributed Systems With an Accurate Scale Model
Large-scale network services can consist of tens of thousands of machines running thousands of unique software configurations spread across hundreds of physical networks. Testing such services for complex performance problems and configuration errors remains a difficult problem. Existing testing techniques, such as simulation or running smaller instances of a service, have limitations in predicting overall service behavior. Although technically and economically infeasible at this time, testing should ideally be performed at the same scale and with the same configuration as the deployed service. The authors present DieCast, an approach to scaling network services in which they multiplex all of the nodes in a given service configuration as Virtual Machines (VM) spread across a much smaller number of physical machines in a test harness.