In diesem Tutorial stellen Sie eine monolithische node.js-Anwendung in einem Docker-Container bereit und entkoppeln dann die Anwendung ohne Ausfallzeit in Microservices. Die node.js-Anwendung hostet eine einfache Info-Wand mit Diskussionen und Nachrichten zwischen den Benutzern.

Traditionelle monolithische Architekturen sind schwer anzupassen. Wenn die Codebasis einer Anwendung wächst, wird es kompliziert, sie zu aktualisieren und zu warten. Die Einführung neuer Funktionen, Sprachen, Frameworks und Technologien wird sehr schwierig und begrenzt Innovation und neue Ideen.

Innerhalb einer Microservices-Architektur läuft jede Anwendungskomponente als eigener Service und kommuniziert über eine wohldefinierte API mit anderen Services. Microservices bauen auf Businessfähigkeiten auf und jeder Service führt eine einzige Funktion aus. Microservices können mit verschiedenen Frameworks und Programmiersprachen geschrieben werden und können unabhängig voneinander als einzelner Service oder als Gruppe von Services bereitgestellt werden.

In diesem Tutorial zeigen wir Ihnen, wie Sie eine einfache monolithische Anwendung in einem Docker-Container ausführen, die gleiche Anwendung als Microservices bereitstellen und dann den Datenverkehr ohne Ausfallzeit zu den Microservices verschieben. Nachdem Sie fertig sind, können Sie dieses Tutorial und den darin enthaltenen Code als Vorlage zum Erstellen und Bereitstellen eigener in Container verpackter Microservices in AWS verwenden.

Anwendungsarchitektur
Monolithische Architektur

Monolithische Architektur

Die gesamte node.js-Anwendung wird als einzelner Service in einem Container ausgeführt, und jeder Container hat die gleichen Eigenschaften wie alle anderen Container. Wenn ein Anwendungsmerkmal einen Anstieg der Nachfrage feststellt, muss die gesamte Architektur angepasst werden.

 
Microservices-Architektur

Microservices-Architektur

Jedes Merkmal der node.js-Anwendung wird als separater Service innerhalb seines eigenen Containers ausgeführt. Die Services können angepasst und unabhängig von den anderen aktualisiert werden.

AWS-Erfahrung: Fortgeschrittene

Benötigte Zeit: 2 Stunden

Kosten für den Abschluss: Jeder in dieser Architektur verwendete Service kann für das kostenlose AWS-Kontingent verwendet werden. Wenn Sie sich außerhalb der Nutzungsgrenzen der des kostenlosen Kontingents befinden, kostet Sie das Durcharbeiten dieses Tutorials weniger als 0,25 USD*.

Verwendete Technologien: Um dieses Tutorial abzuschließen, verwenden Sie:

*Diese Schätzung setzt voraus, dass Sie die empfohlenen Konfigurationen während des gesamten Tutorials befolgen und alle Ressourcen innerhalb von 24 Stunden beenden.

** Konten, die innerhalb der letzten 24 Stunden erstellt wurden, haben möglicherweise keinen Zugriff auf alle Ressourcen, die zum Abschließen dieses Lernpfads erforderlich sind.