Detecting anti-patterns in a MSA using distributed tracing

Detecting anti-patterns in a MSA using distributed tracing at ING

Master Thesis (2022)
Author(s)

N.E. Hullegien (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

Luis Cruz – Mentor (TU Delft - Software Engineering)

A. van Deursen – Mentor (TU Delft - Software Technology)

A. Katsifodimos – Graduation committee member (TU Delft - Web Information Systems)

Pieter Vallen – Mentor (ING Bank)

Kevin van der Vlist – Mentor (ING Bank)

Jonck van der Kogel – Mentor (ING Bank)

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2022 Nils Hullegien
More Info
expand_more
Publication Year
2022
Language
English
Copyright
© 2022 Nils Hullegien
Graduation Date
05-07-2022
Awarding Institution
Delft University of Technology
Programme
Computer Science | Software Technology
Sponsors
ING Bank
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Microservice architectures (MSA) have become a dominant architectural style choice in the service oriented software industry. Because of this, as with any other system, some unoptimized approaches might creep into architectures. These are what we call anti-patterns, they can be considered the opposite of design patterns. Furthermore, a microservice architecture can quickly grow to an immense scale due to the number of services.

In this work, we present Luduan, a tool created within ING that provides engineers with insights into their MSA. Using different graph metrics and tracing data, we determine the likelihood of any service containing certain anti-patterns. We validate this methodology by gathering feedback from subject-matter experts, by ways of surveys and one-on-one sessions where Luduan is used as a support tool. Finally, we ask teams that are responsible for services, to figure out whether their service has an anti-pattern or not. We then use these results to fine tune the computations from metrics to anti-pattern likelihood.

Files

Thesis_Nils_Hullegien.pdf
(pdf | 1.24 Mb)
- Embargo expired in 01-08-2022
License info not available