Development Frameworks for Microservice-based Applications: Evaluation and Comparison

03/14/2022
by   Hai Dinh-Tuan, et al.
0

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

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/29/2020

SLO-ML: A Language for Service Level Objective Modelling in Multi-cloud Applications

Cloud modelling languages (CMLs) are designed to assist customers in tac...
research
10/20/2020

Resource Management Schemes for Cloud-Native Platforms with Computing Containers of Docker and Kubernetes

Businesses have made increasing adoption and incorporation of cloud tech...
research
06/21/2023

Cloud-Native Architectural Characteristics and their Impacts on Software Quality: A Validation Survey

Cloud-native architectures are often based on microservices and combine ...
research
03/08/2021

Structural Coupling for Microservices

Cloud-native Applications are 'distributed, elastic and horizontal-scala...
research
06/03/2019

Service-Oriented Re-engineering of Legacy JEE Applications: Issues and Research Directions

Service-orientation views applications as orchestrations of independent ...
research
11/06/2019

Developing a Process in Architecting Microservice Infrastructure with Docker, Kubernetes, and Istio

As an application usage grows, its owner scales up vertically by replaci...
research
04/06/2019

Idealize - A Notion of Idea Strength

Business Entrepreneurs frequently thrive on looking for ways to test bus...

Please sign up or login with your details

Forgot password? Click here to reset