WikiDer > Mehrschichtige Architektur

Multitierarchitectuur

Mehrschichtige Architektur bedeutet, dass die Struktur von Software (die Architektur) besteht aus mehreren Schichten. Wird oft als n-Tier-Architektur bezeichnet. Eine bekannte Implementierung einer Multi-Tier-Architektur ist die Client-Server-Modell, die eine 2-Tier-Architektur ist.

Der Gedanke hinter Stufen

Die Idee hinter einer Multi-Tier-Architektur beginnt mit der Idee, Software in mehrere Komponenten aufzuteilen, die zusammenarbeiten. Die Idee hinter den Komponenten ist wieder, die Entkopplung von Funktionalität und Wiederverwendung von Funktionalität anzuregen.Jede Komponente hat nun ihre eigenen Verantwortlichkeiten. Eine gängige Architektur ist eine 3-Tier-Architektur. In einer solchen Architektur gibt es eine separate Ebene für die Präsentation, den Datenzugriff der Geschäftslogik und die Datenspeicherung.

Stufe vs. niedrig

Die Begriffe Tier und Layer werden oft synonym verwendet. Ein wichtiger Unterschied zwischen einer Schicht und einer Schicht besteht darin, dass jede Schicht tatsächlich auf einem separaten System als separater Prozess ausgeführt werden kann. Im obigen Beispiel der 3-Tier-Architektur wird die Präsentationsschicht (z. B. ein Windows-Fenster) auf einem Client ausgeführt, während die Geschäftslogik und der Datenzugriff als mittlere Schicht auf einem Server ausgeführt werden. Schließlich wird die Datenschicht wieder auf einem separaten Datenbankserver ausgeführt.

Schichten, die in Softwareanwendungen verwendet werden, sind hauptsächlich logische Unterteilungen in der Software selbst. Obwohl jede Schicht separat zu einem Paket oder einer Bibliothek kompiliert werden könnte, werden die Schichten (oft) als ein Prozess auf demselben Client ausgeführt.

Jedes Mal eine Stufe mehr

Am Anfang des Computerzeitalter Software auf sog Lochkarten gedruckt. Die Lochkarte enthielt sowohl die Daten als auch die Rechenoperationen. Diese wurden dem Computer zugeführt und dieser spuckte ein Ergebnis aus (wahrscheinlich auch auf einer Lochkarte). Das Berechnungsprogramm und die Daten wurden in einer Ebene verarbeitet: der Lochkarte.

Im Laufe der Entwicklung wurden Computer immer intelligenter und können immer mehr. Eine der Entwicklungen war die Netzwerktechnik und Datenspeicherung. Durch diese Entwicklung entstand auch die Notwendigkeit, die Verantwortlichkeiten von Datenspeicherung und Datenverarbeitung in der Software zu trennen: die Entstehung einer 2-Tier-Architektur, Client-Server-Modell.

Mit dem Aufkommen des Internet, die Veröffentlichung verschiedener Internetbrowser und Web Applikationen es entstand die Notwendigkeit, eine andere Schicht zu unterscheiden. Dadurch würden drei Ebenen erstellt: eine Präsentations- und Anzeigeebene, eine Ebene für Anwendungs- und Geschäftslogik und eine Ebene für die Datenspeicherung.

Eine mehrschichtige Architektur kann erreicht werden, indem man die Tieridee sehr weit führt. Man könnte auch von einem Präsentationsteil und einem Anwendungsteil in der Präsentationsebene sprechen. Beispiel: In Webformularen gibt es eine Präsentationsschicht (HTML-Formatierung) und eine Anwendungsschicht (Code-Behind, die die Eingaben nach dem Absenden überprüft).

Anwendbarkeit und Effizienz

Ein wichtiges Ziel der Unterteilung von Software in Tiers besteht darin, Software in Blöcke mit klar definierter Funktionalität unterteilen zu können. Es ist dann möglich, diese Komponenten oder Ebenen für andere Zwecke wiederzuverwenden. Stellen Sie sich eine Anwendungsebene vor, die Daten sowohl aus dem Web überträgtSchnittstelle wenn Windows überprüft. Eine solche Ebene muss nur einmal geschrieben werden. Es erleichtert auch die Entwicklung von Software in unabhängigen Teams, da die Verantwortlichkeiten der Tiers klar getrennt sind.

Siehe auch