Die dienstorientierte Architektur (SOA) ist ein architektonischer Ansatz für die Entwicklung von Anwendungen auf der Grundlage einer Sammlung unabhängiger Dienste. Ein Dienst kann eine beliebige Geschäftsfunktion sein, die eine Aktion ausführt und ein bestimmtes Ergebnis liefert, z. B. die Bearbeitung einer Kundenbestellung oder die Erstellung eines Bestandsberichts. Dienste können miteinander verbunden werden, um zusammengesetzte Anwendungen zu erstellen, die den Endbenutzern eine größere Funktionalität bieten.
Zu den Vorteilen des SOA-Ansatzes gehört die einfachere Wartung und Aktualisierung von Dienstkomponenten. Da jede Komponente komprimiert und in sich geschlossen ist, ist es einfacher, Code zu korrigieren oder Elemente zu ersetzen, ohne dass sich dies auf alle anderen Elemente auswirkt. Probleme ergeben sich jedoch, wenn wir festlegen, wie wir die Kommunikation zwischen den Diensten am besten ermöglichen. SOA wird in der Regel mit dem Enterprise Service Bus (ESB) als zentralem Mittel für die Kommunikation zwischen den Diensten in Verbindung gebracht. ESBs reagieren oft nicht gut auf Änderungen, führen in der Regel zu mehr Komplexität und machen es schwieriger zu verstehen, wo ein Dienst beginnt und endet.
Wenn Sie denken, dass SOA der aktuellen Definition von Microservices sehr ähnlich ist, dann sind Sie nicht allein. Microservices sind ebenfalls kleine, in sich geschlossene Dienste, die unabhängig voneinander funktionieren und gleichzeitig zusammenarbeiten sollen. Es gibt jedoch wichtige Unterschiede zwischen SOA und Microservices. Hier sind einige, die zu beachten sind:
Während viele Leute denken, dass Microservices letztendlich SOA sind, gibt es tatsächlich eine Reihe von ausschlaggebenden Unterschieden, die die beiden unterscheiden – und die Microservices in vielerlei Hinsicht zur effektiveren Architektur für komplexe Anwendungen machen. Weitere Informationen über SOA und Microservices erhalten Sie, wenn Sie das kostenlose E-Book, Microservices aufbauen: Fein abgestufte Systeme entwerfen herunterladen.
NGINX Plus und NGINX sind die besten Lastausgleichs-Lösungen ihrer Klasse, die von stark frequentierten Websites wie Dropbox, Netflix und Zynga eingesetzt werden. Mehr als 350 Millionen Websites weltweit vertrauen auf NGINX Plus und NGINX Open Source, um ihre Inhalte schnell, zuverlässig und sicher bereitzustellen.
Als softwarebasierter Application Delivery Controller (ADC) ist NGINX Plus darauf ausgelegt, Microservices-Architekturen weitaus effektiver und kostengünstiger zu unterstützen als Hardware-Lösungen mit vergleichbaren Funktionen.