DEVELOPMENT OF AN ENVIRONMENT CONFIGURATION TOOL FOR PERFORMANCE TESTING OF MICROSERVICE-BASED APPLICATIONS IN A KUBERNETES ENVIRONMENT

The complexity and volatility inherent in software development have led many companies to adopt microservice architecture. However, microservices as a distributed system introduce new challenges, with performance testing being a significant one. Early performance testing is crucial to minimizing...

Full description

Saved in:
Bibliographic Details
Main Author: Ferry Priguna, Ignasius
Format: Final Project
Language:Indonesia
Online Access:https://digilib.itb.ac.id/gdl/view/85068
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Institut Teknologi Bandung
Language: Indonesia
Description
Summary:The complexity and volatility inherent in software development have led many companies to adopt microservice architecture. However, microservices as a distributed system introduce new challenges, with performance testing being a significant one. Early performance testing is crucial to minimizing unexpected costs due to performance issues in the production environment. A tool was developed for this final project to facilitate easier microservice performance testing within Kubernetes, enabling early identification of performance issues. This tool aids in the collection of traces and resource usage data of applications through the OpenTelemetry Collector, the substitution of services with Mountebank virtual services, and the definition of data for the virtual services. In a test conducted on the OpenTelemetry Demo microservice, substituting the Checkout Service with a virtual service reduced CPU and memory usage by 33% and 47%, respectively. While there were no significant differences in average response time, the virtual service did not effectively simulate response time fluctuations. Performance testing without fully developed dependencies can be performed through performance budgeting, but significant differences in response time were observed.