Während ich in der Microservices-Welt noch relativ neu bin, werde ich versuchen, Ihre Frage so vollständig wie möglich zu beantworten.
Wenn Sie die Microservices-Architektur verwenden, haben Sie eine stärkere Entkopplung und Trennung von Bedenken. Da Sie Ihre Bewerbung buchstäblich aufteilen.
Dies führt dazu, dass Ihre Codebasis einfacher zu verwalten ist (jede Anwendung ist unabhängig von den anderen Anwendungen, um am Laufen zu bleiben). Deshalb , wenn Sie dieses Recht tun , wird es in Zukunft leichter an neue Funktionen hinzufügen , um Ihre Anwendung. Während es bei einer monolithischen Architektur sehr schwierig werden kann, wenn Ihre Anwendung groß ist (und Sie können davon ausgehen, dass dies zu einem bestimmten Zeitpunkt der Fall sein wird).
Das Bereitstellen der Anwendung ist auch einfacher , da Sie die unabhängigen Mikrodienste separat erstellen und auf separaten Servern bereitstellen. Dies bedeutet, dass Sie jederzeit Dienste erstellen und bereitstellen können, ohne den Rest Ihrer Anwendung neu erstellen zu müssen.
Da die verschiedenen Dienste klein sind und separat bereitgestellt werden, ist es offensichtlich einfacher, sie zu skalieren , mit dem Vorteil, dass Sie bestimmte Dienste Ihrer Anwendung skalieren können (mit einem Monolithic skalieren Sie das gesamte "Ding", selbst wenn es nur ein bestimmter Teil innerhalb der ist Anwendung, die eine übermäßige Belastung erhält).
Für Anwendungen, die nicht zu groß werden sollen, um in Zukunft verwaltet zu werden. Es ist besser, die monolithische Architektur beizubehalten. Da die Microservices-Architektur einige ernsthafte Schwierigkeiten aufweist. Ich erklärte, dass es einfacher ist, Microservices bereitzustellen, aber dies gilt nur im Vergleich zu großen Monolithen. Mit Microservices haben Sie die zusätzliche Komplexität, die Dienste auf verschiedene Server an verschiedenen Standorten zu verteilen, und Sie müssen einen Weg finden, um all dies zu verwalten. Das Erstellen von Microservices hilft Ihnen auf lange Sicht, wenn Ihre Anwendung groß wird. Bei kleineren Anwendungen ist es jedoch einfacher, monolithisch zu bleiben.