Bachelorarbeit BCLR-2017-06

Wenzler, Nils: Automated performance regression detection in microservice architectures.
Universität Stuttgart, Fakultät Informatik, Elektrotechnik und Informationstechnik, Bachelorarbeit (2017).
111 Seiten, englisch.
CR-Klassif.C.2.4 (Distributed Systems)
D.2.8 (Software Engineering Metrics)

The emergence of microserive architectures has lead to a need for software performance techniques which cater to the needs of these architectures. Microservice architectures are architectures which are build out of small independent processes which communicate by use of language independent interfaces such as REST. Microservice environments challenge common software performance engineering techniques by their highly distributed nature, their rapidly changing systems and their extensive use of virtualization and containers. Detecting performance changes of a system during development, so-called performance regression detection, is a valuable addition to the development and maintenance of software systems. How software performance regression detection can be performed in microservice architectures is the non-trivial question, on which this thesis focuses to answer. To reach this goal, in a first step extensive research on by the microservice orchestration technology Kubernetes and the containerization technology Docker provided software performance metrics is performed. Results show that some major performance metrics can not be considered to be stable concerning redeployments of the microservice system. They suggest that performance metrics of a microservice instance can be highly impaired by other microservices running on the same node. A second step empirically evaluates the performance of existing performance regression detection techniques in the context of a microservice environment. After a thoroughly comparison of the different approaches, selected approaches were implemented and their performance was evaluated empirically in the test setup. The results show that some approaches are not applicable or show a bad performance in the microservice setup. Although none of the approaches performed well enough for practical application, two of the approaches showed promising results, which could lead to enabling performance regression detection in microservice architectures.

Volltext und
andere Links
PDF (950956 Bytes)
Abteilung(en)Universität Stuttgart, Institut für Softwaretechnologie, Sichere und Zuverlässige Softwaresysteme
Betreuervan Hoorn, Dr. André; Pitakrat, Teerat; Bezemer, Cor-Paul
Eingabedatum26. September 2018
   Publ. Informatik