A Communication-Aware and Energy-Efficient Genetic Programming Based Method for Dynamic Resource Allocation in Clouds
摘要
Loosely coupled microservices have emerged as a new paradigm for efficiently deploying applications in clouds. However, dynamic resource allocation in clouds introduces significant challenges to microservice application deployment. On the one hand, frequent invocations between microservices may lead to substantial communication overhead if microservices are not allocated properly. On the other hand, the increasing number of microservices in modern applications makes it very challenging to minimize the energy consumption of a cloud data center as it introduces a bi-level optimization problem with an extremely large search space. In this paper, we propose a new communication-aware and energy-efficient genetic programming based method that automatically learns heuristics for dynamic resource allocation to jointly minimize the communication overhead and the energy consumption. Comprehensive experiments using real-world datasets show that our proposed method can evolve effective heuristics that noticeably outperform existing approaches for dynamic microservice deployment in clouds.