Systematic scalability analysis for microservices granularity adaptation design decisions. (31st January 2022) - Hassan, Sara; Bahsoon, Rami; Buyya, Rajkumar
Abstract: Microservices have gained wide recognition and acceptance in software industries as an emerging architectural style for autonomous, scalable and more reliable computing. A critical problem related to microservices is reasoning about the suitable granularity level of a microservice (i.e., when and how to merge or decompose microservices). Although scalability is pronounced as one of the major factors for adoption of microservices, there is a general gap of approaches that systematically analyse the dimensions and metrics, which are important for scalability‐aware granularity adaptation decisions. To the best of our knowledge, the state‐of‐art in reasoning about microservice granularity adaptation is neither: (1) driven by microservice‐specific scalability dimensions and metrics nor (2) follow systematic scalability analysis to make scalability‐aware adaptation decisions. In this article, we address the aforementioned problems using a two‐fold contribution. Firstly, we contribute to a working catalogue of microservice‐specific scalability dimensions and metrics. Secondly, we describe a novel application of scalability goal‐obstacle analysis for the context of reasoning about microservice granularity adaptation. We analyse both contributions by comparing their usage on a hypothetical microservice architecture against ad‐hoc scalability assessment for the same architecture. This analysis shows how both contributions can aid making scalability‐aware granularity adaptation decisions.