Die Microservices-Anwendung, die ein verteiltes System ist, ermöglicht die Bereitstellung einzelner Dienste auf physisch getrennten verschiedenen Instanzen oder Instanzen der virtuellen Cloud-Maschine (VM). Jeder Microservice ist dafür verantwortlich, seinen Teil zu vervollständigen und mit anderen über sprach- und plattformunabhängige Programmierschnittstellen (APIs) zu kommunizieren. Wenn diese Mikroservices auf einer VM bereitgestellt werden, verwenden sie viele Systemressourcen (z. B. CPU, Speicher, Platten-E / A und Netzwerk-E / A), um Benutzeranforderungen zu verarbeiten. Die Ressourcennutzung hängt vom Task-Typ ab (CPU-intensiv, speicherintensiv oder Create Read Update Delete (CRUD)). Die Ressourcennutzung ändert sich mit der Variation der Anzahl der Benutzeranforderungen oder der Benutzerauslastung. Je nach Art der Arbeit hat eine bestimmte Ressourcennutzung eine größere Wirkung als andere. Als Ergebnis würde in einer bestimmten Phase die Antwortzeit der Anforderungen über die gewünschte Zeit hinausgehen. Die maximale Anzahl von Anforderungen, die innerhalb dieser Zeit bedient werden können, wird als Maximum Service Capacity (MSC) des Microservice bezeichnet. Die Leistung eines Microservice ist direkt mit dem MSC verbunden. Das automatische Erkennen von MSC für jeden Microservice kann in der Praxis eine Herausforderung darstellen, da Microservices-Anwendungen unter Verwendung mehrerer Abstraktionsschichten implementiert werden. Diese zahlreichen Abstraktionsschichten führen zu einem zusätzlichen Aufwand für die indirekte Nutzung von Hardwareressourcen und verschleiern außerdem die Laufzeitinformationen. Diese Herausforderung wächst mehr mit der Verfügbarkeit der verschiedenen Bereitstellungskonfigurationen (z. B. virtueller Maschinentyp, Cloud-Dienstanbieter, Bereitstellungsstrategie usw.). MSC variiert mit verschiedenen Bereitstellungskonfigurationen.
Diese Masterarbeit zielt darauf ab, dieses Problem der Identifizierung des MSC für jeden Mikroservice der Anwendung zu lösen, indem das Leistungsmodell in allen möglichen Bereitstellungskonfigurationen erstellt wird. Ein neuartiger Ansatz für Microservices Performance-Modellierung und Sandbox-Microservices aus einer Anwendung wird in dieser Forschung vorgestellt. Dieser Ansatz wird in einem Tool namens Terminus implementiert. Das vorgeschlagene Tool prognostiziert das MSC des Microservice für verschiedene Bereitstellungskonfigurationen, indem ein Modell aus den durchgeführten Tests trainiert wird. Die abgeleiteten Ergebnisse aus dem Tool könnten auch verwendet werden, um den Engpass-Microservice zusammen mit der Anzahl von Microservice-Replikaten zu ermitteln, die zum Erzielen einer angemessenen Leistung benötigt werden.
«
Die Microservices-Anwendung, die ein verteiltes System ist, ermöglicht die Bereitstellung einzelner Dienste auf physisch getrennten verschiedenen Instanzen oder Instanzen der virtuellen Cloud-Maschine (VM). Jeder Microservice ist dafür verantwortlich, seinen Teil zu vervollständigen und mit anderen über sprach- und plattformunabhängige Programmierschnittstellen (APIs) zu kommunizieren. Wenn diese Mikroservices auf einer VM bereitgestellt werden, verwenden sie viele Systemressourcen (z. B. CPU, S...
»