Această teză de master explorează dezvoltarea unei aplicații și implementarea unui sistem pentru distribuirea echilibrată a sarcinilor în arhitecturi bazate pe microservicii. Obiectivul principal al lucrării este crearea unui mediu performant și stabil pentru sistemele distribuite, prin utilizarea algoritmilor de load balancing, cum ar fi Round-Robin, Least Connections și Weighted, în combinație cu clustering-ul implementat pe Kubernetes. Pe parcursul proiectului, microserviciul dezvoltat a fost integrat cu o bază de date Elasticsearch, utilizată pentru gestionarea și procesarea eficientă a datelor. Procesul a inclus testarea și analiza comparativă a soluțiilor propuse, evaluând timpul de răspuns, consumul de resurse (CPU, memorie) și capacitatea de procesare a cererilor. Analizele efectuate au permis identificarea celei mai potrivite soluții pentru diferite scenarii de utilizare. Rezultatele au subliniat beneficiile arhitecturii propuse, evidențiind îmbunătățiri semnificative în ceea ce privește performanța, scalabilitatea și stabilitatea. Acest proiect aduce o contribuție valoroasă la dezvoltarea arhitecturilor distribuite moderne.
This master's thesis explores the development of an application and the implementation of a load balancing system in architectures based on microservices. The main objective of the work is to create a high-performance and stable environment for distributed systems by utilizing load balancing algorithms such as Round-Robin, Least Connections, and Weighted, combined with clustering implemented on Kubernetes. Throughout the project, the developed microservice was integrated with an Elasticsearch database, used for efficient data management and processing. The process included testing and comparative analysis of the proposed solutions, evaluating response time, resource consumption (CPU, memory), and request processing capacity. The analyses allowed for identifying the most suitable solution for different usage scenarios. The results highlighted the benefits of the proposed architecture, showing significant improvements in performance, scalability, and stability. This project contributes valuable insights to the development of modern distributed architectures.