Cloud computing employs on-demand resource provisioning to applications that share the computing infrastructures to increase the resource utilization and thus reduce the cost. Due to the dramatic variation of the application demand, dynamic resource management becomes the enabling technology for the success of cloud computing paradigm. For example, we need to decide where to deploy application instances and how to distribute client requests to the instance replicas dynamically in a global environment. Also, we need to allocate resources to applications as quickly as possible to absorb the increasing demand. This book gives great explanations and investigations for these problems.