A reliable and cost-efficient auto-scaling system for web applications using heterogeneous spot instances. (April 2016)