Migrating to Cloud-Native Architectures Using Microservices: An Experience Report
Armin Balalaie (1), Abbas Heydarnoori (1), Pooyan Jamshidi (2) ((1), Sharif University of Technology, (2) Imperial College London)

TL;DR
This paper reports on the experience of migrating a monolithic system to microservices, highlighting benefits like scalability and availability, but also discussing complexities and considerations for successful adoption.
Contribution
It provides practical insights and lessons learned from an actual migration project emphasizing the importance of context in adopting microservices.
Findings
Microservices can enhance scalability and availability in cloud migration.
Migration introduces new complexities such as distribution challenges.
Context-specific factors are crucial for successful microservices adoption.
Abstract
Migration to the cloud has been a popular topic in industry and academia in recent years. Despite many benefits that the cloud presents, such as high availability and scalability, most of the on-premise application architectures are not ready to fully exploit the benefits of this environment, and adapting them to this environment is a non-trivial task. Microservices have appeared recently as novel architectural styles that are native to the cloud. These cloud-native architectures can facilitate migrating on-premise architectures to fully benefit from the cloud environments because non-functional attributes, like scalability, are inherent in this style. The existing approaches on cloud migration does not mostly consider cloud-native architectures as their first-class citizens. As a result, the final product may not meet its primary drivers for migration. In this paper, we intend to…
Peer 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.
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 · IoT and Edge/Fog Computing
