Abstract

Microservice architecture relies on message passing between services. Inter-service communication introduces an overhead to the applications’ overall performance. This overhead depends on the runtime placement of the services bundled in containers and it can be reduced by intelligently deploying the containers by considering the communication affinities between services. Researchers have attempted to colocate microservices and merge containers based on affinities. However, container merging has not been considered up to now. This study shows that the problem of service placement in a microservice application considering communication affinities, constrained by computational resources, can be mapped to an instance of the Binary Knapsack Problem. We propose a container colocation and merging mechanism based on a heuristic solution to the Binary Knapsack Problem. The proposed approach reduced the communication overhead of a benchmark application by 58.5% and as a result, execution time was reduced by approximately 13.4% as well.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call