Was ist Multitier-Architektur?
Beim Rechnen ist "Mehrschichtarchitektur" ein Begriff, der auf eine Anordnung von Komponenten oder Software angewendet wird, bei der die verschiedenen Funktionen, die zum Abschließen einer Operation erforderlich sind, in separate physikalische oder logische Unterteilungen unterteilt sind. Jedes der Segmente der größeren Architektur ist nur für die Ausführung eines bestimmten Aufgabentyps verantwortlich und kennt die internen Abläufe der umgebenden Segmente, die unterschiedliche Aufgaben ausführen, meist nicht. Die gebräuchlichsten und grundlegendsten Unterteilungen, die in einer mehrschichtigen Architektur verwendet werden, sind die Präsentations-, Logik- und Datenebenen. Die Präsentation ist nur für das Anzeigen von Informationen für einen Benutzer verantwortlich, und die Datenebene ist nur für das Speichern oder Abrufen von Daten verantwortlich, während die Logikebene die beiden überbrückt, Programmlogik auf Benutzereingaben aus der Präsentation anwendet und Informationen aus der Datenebene verständlich macht . Große Computersysteme verwenden eine mehrschichtige Architektur, da sie die verschiedenen Ausführungspunkte des Steuerungsflusses abstrahieren. Auf diese Weise können verschiedene präzise Komponenten für Upgrades, Tests oder Fehlerbehebungen ausgewählt werden, während die verbleibenden Module unberührt bleiben.
Multitier-Architektur kann auch als mehrschichtige Architektur bezeichnet werden, obwohl es einen Unterschied gibt. In den meisten Fällen impliziert die Verwendung des Begriffs "Multitier-Architektur", dass sich die separaten Komponenten eines Systems tatsächlich auf physikalisch unterschiedlicher Hardware oder auf unterschiedlichen Servern befinden, während ein geschichtetes System möglicherweise nur unterschiedliche Anwendungen implementiert, die im selben physikalischen Raum ausgeführt werden. Nicht alle Multitier-Systeme verwenden jedoch separate Hardware. Sie können die Funktionen stattdessen nur durch logische Unterteilungen trennen, z. B. durch unterschiedliche Partitionen auf einer einzelnen Festplatte.
Die meisten Architekturen mit mehreren Ebenen haben drei unterschiedliche Ebenen, obwohl es je nach den Anforderungen oder dem Aufbau eines Systems mehrere Ebenen geben kann. Die erste Ebene wird als Präsentationsebene bezeichnet und ist für die Anzeige der an sie weitergegebenen Informationen sowie für die Eingabe durch die Benutzer zuständig. Dies erfolgt in der Regel über eine grafische Benutzeroberfläche (GUI). Die Präsentationsschicht ist mit der Logikschicht verbunden. Dies ist der Bereich, in dem Benutzereingaben bewertet, Daten von der Datenschicht abgerufen und bestimmte Verarbeitungen oder Berechnungen ausgeführt werden. Die Logikschicht ist mehr oder weniger das, was traditionell als Standard-Computeranwendung angesehen wird, obwohl sie keine Möglichkeit zum direkten Anzeigen der Ausgabe und keine Möglichkeit zum direkten Empfangen von Eingaben von einem Benutzer bietet.
Die Datenschicht ist nur für das Schreiben und Lesen von Daten verantwortlich und kann in Form eines Arrays von Datenträgern oder eines relationalen Datenbankverwaltungssystems (RDBMS) vorliegen. Die Datenebene ist zwar für die Verwaltung des Speicherns und Abrufs von Daten in einem Aufbau mit mehreren Architekturen verantwortlich, kennt jedoch den Kontext der Daten nicht und befasst sich nur mit Datensätzen oder Datenträgereingabe- und -ausgabefunktionen. Ein definierendes Merkmal der Schichten in einer Mehrschichtenarchitektur besteht darin, dass kein Segment die Grenzen der Aufgaben überschreitet, für die es angegeben ist, sodass keine Geschäftslogik oder Datenfunktionalität in der Präsentationsschicht verfügbar ist und die Logikschicht keine Dateien direkt oder direkt schreiben kann Greifen Sie auf die GUI zu, über die der Benutzer arbeitet. Alle Interaktionen finden über eine Kommunikation im Client-Server-Stil statt, wobei jede Schicht in gewisser Weise sowohl als Client als auch als Server fungiert, je nachdem, welche Interaktion stattfindet.
Einer der Gründe, warum ein großes Computernetzwerk ein mehrschichtiges System verwenden könnte, ist, dass jeder notwendige Schritt im Arbeitsablauf modular ist und unabhängig von den anderen Teilen gehandhabt werden kann. Dies bedeutet, dass die Terminals oder die GUI, die Benutzer verwenden, geändert werden können, ohne dass Änderungen an der Logik oder den Datenebenen erforderlich sind. Ebenso können das RDBMS oder die physischen Speicherlaufwerke geändert werden, ohne dass dies Auswirkungen auf etwas anderes hat. Diese Modularität ist mit einem einstufigen System, bei dem alle Aspekte zu einer einzigen kompilierten Anwendung verschweißt sind, nur sehr schwer oder gar nicht zu erreichen.