vix.ing · top · new · best · stats · spec

Development Frameworks for Microservice-based Applications: Evaluation\n and Comparison

2022/03/14 by Hai Dinh-Tuan, Dinh-Tuan, Hai, Maria Mora-Martinez +5 · 2 citations
Computer Science · #Cloud Computing and Resource Management #Software System Performance and Reliability #IoT and Edge/Fog Computing

paper · pdf · doi:10.48550/arxiv.2203.07267

Abstract

The microservice architectural style has gained much attention from both\nacademia and industry recently as a novel way to design, develop, and deploy\ncloud-native applications. This concept encourages the decomposition of a\nmonolith into multiple independently deployable units. A typical\nmicroservices-based application is formed of two service types: functional\nservices, which provide the core business logic, and infrastructure services,\nwhich provide essential functionalities for a microservices ecosystem. To\nimprove developers' productivity, many software frameworks have been developed\nto provide those reusable infrastructure services, allowing programmers to\nfocus on implementing microservices in arbitrary ways. In this work, we made\nuse of four open source frameworks to develop a cloud-based application in\norder to compare and evaluate their usability and practicability. While all\nselected frameworks promote asynchronous microservice design in general, there\nare differences in the ways each implements services. This leads to\ninteroperability issues, such as message topic naming convention. Additionally,\na key finding is the long startup times of JVM-based services that might reduce\napplication's resiliency and portability. Some other advantages come directly\nfrom the programming language, such as the ability of Go to generate native\nbinary executables, which results in very small and compact Docker images (up\nto 78 % smaller compared to other languages).\n

Cited by

Related