This thesis addresses the progressive delivery of microservice applications in Kubernetes environments. The goal is to compare three architectures for the gradual rollout of a new service version: a Kubernetes-based reference implementation (A0), an approach using Flagger and the Istio service mesh (A1), and an approach using Flagger, the Gateway API standard, and NGINX Gateway Fabric (A2). For this purpose, a demonstration microservice application for warranty claim processing was developed, together with a reproducible experimental framework that includes load generation, controlled fault injection, metric collection, and automated scenario execution. The final experimental campaign consists of 540 runs: three architectures, three load levels, two traffic profiles, three regression scenarios, and ten repetitions of each combination. The results show that all three architectures correctly decided whether to promote the candidate version or roll back to the stable version. The differences between the approaches therefore do not appear primarily in decision correctness, but in the traffic model, client-side traffic stability, resource consumption, and operational complexity. In the 1000 RPS stress test, the A0 reference implementation shows a higher client-side request failure rate, A1 has the highest CPU and memory consumption, while A2 provides the most balanced trade-off. The thesis thus provides an empirically grounded comparison of three progressive delivery architectures and practical guidance for selecting an appropriate progressive delivery architecture in microservice environments.
|