Serviceorientierte Architektur (SOA) ist ein Architekturansatz zum Entwerfen von Anwendungen rund um eine Sammlung unabhängiger Dienste. Ein Dienst kann jede Geschäftsfunktionalität 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 zusammengefügt werden, um zusammengesetzte Anwendungen zu erstellen, die Endbenutzern mehr Funktionalität bieten.
Zu den Vorteilen des SOA-Ansatzes gehört, dass sich Servicekomponenten einfacher warten und aktualisieren lassen. Da die einzelnen Komponenten kompakter und eigenständiger sind, können Codefehler leichter behoben oder Elemente ersetzt werden, ohne dass dies Auswirkungen auf alle anderen Elemente hat. Es treten jedoch Probleme auf, wenn wir bestimmen, wie die Kommunikation zwischen Diensten am besten ermöglicht werden kann. SOA wird typischerweise mit dem Enterprise Service Bus (ESB) als zentrales Kommunikationsmittel zwischen Diensten in Verbindung gebracht. ESBs reagieren häufig nicht gut auf Änderungen, führen typischerweise zu mehr Komplexität und erschweren das Verständnis, wo ein Dienst beginnt und endet.
Wenn Sie denken, dass SOA stark nach der aktuellen Definition von Microservices klingt, sind Sie nicht allein. Microservices sind ebenfalls kleine, in sich geschlossene Dienste, die unabhängig voneinander funktionieren, aber auch zusammenarbeiten sollen. Es gibt jedoch wesentliche Unterschiede zwischen SOA und Microservices. Hier sind einige Hinweise:
Viele Menschen glauben, dass Microservices die endlich richtige SOA sind. Tatsächlich gibt es jedoch eine Reihe entscheidender Unterschiede zwischen den beiden Systemen – und diese machen Microservices in vielerlei Hinsicht zur effektiveren Architekturwahl für komplexe Anwendungen. Weitere Informationen zu SOA und Microservices erhalten Sie im kostenlosen E-Book „Building Microservices“: Entwurf feinkörniger Systeme .
NGINX Plus und NGINX sind die besten Lastausgleichslösungen ihrer Klasse, die von Websites mit hohem Datenverkehr wie Dropbox, Netflix und Zynga verwendet werden. Mehr als 350 Millionen Websites weltweit verlassen sich 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 Hardwarelösungen mit vergleichbaren Funktionen.