Optimal and Automated Deployment for Microservices
Mario Bravetti, Saverio Giallorenzo, Jacopo Mauro, Iacopo Talevi, and, Gianluigi Zavattaro

TL;DR
This paper formalizes automated deployment for microservices, demonstrating its algorithmic treatability under specific assumptions, and presents an implementation of an optimal deployment tool tested on realistic architectures.
Contribution
It introduces a formal model for microservice deployment, proving its algorithmic solvability, and provides a practical tool for automatic optimal deployment planning.
Findings
Automated deployment is algorithmically treatable for microservices under certain assumptions.
An automatic deployment tool was implemented and tested on realistic architectures.
The approach enables optimal deployment planning in microservice environments.
Abstract
Microservices are highly modular and scalable Service Oriented Architectures. They underpin automated deployment practices like Continuous Deployment and Autoscaling. In this paper, we formalize these practices and show that automated deployment - proven undecidable in the general case - is algorithmically treatable for microservices. Our key assumption is that the configuration life-cycle of a microservice is split into two phases: (i) creation, which entails establishing initial connections with already available microservices, and (ii) subsequent binding/unbinding with other microservices. To illustrate the applicability of our approach, we implement an automatic optimal deployment tool and compute deployment plans for a realistic microservice architecture, modeled in the Abstract Behavioral Specification (ABS) language.
Click any figure to enlarge with its caption.
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Cloud Computing and Resource Management · Advanced Software Engineering Methodologies
