Schichtenarchitektur
Dieser Artikel wird derzeit von einem Autor gründlich bearbeitet. Die Inhalte sind daher evtl. noch inkonsistent.
Vorlage:Schichtenarchitektur:Menü
Definition
- Schichtenarchitektur strikt 01.png
strikte 3-Schichtenarchitektur
- Schichtenarchitektur 01.png
3-Schichtenarchtektur
Als n-Schichtenarchitektur oder -paradigma (engl. Multitier architecture oder n-tier architecture) bezeichnet man ein Architekturmuster, bei der eine Anwendungs-Komponente in mehrere eigenständige Module unterteilt wird, die schichtenförmig angeordnet sind: Layer 1, Layer 2, ..., Layer n.
Objekte höherer Schichten dürfen direkt mit Objekten tieferer Schichten kommunizieren. Objekte tieferer Schichten können dagegen mit Objekten höherer Schichten nur indirekt kommunizieren (z.B. mittels Antworten auf Methodenaufrufen und mittels Multicast-Nachrichten oder Broadcast-Nachrichten).
Bei einer strikten Architektur ist die Kommunikation nur zwischen direkt benachbarten Modulen möglich.
Beispiele für Schichtenarchtekturen
Middelware
Der Begriff „Multitier Architecture“ („Mehrschichten-Architektur“) wurde ursprünglich für verteilte Anwendungen (CORBA, Java RMI, SOAP, JSP, EJB etc.) eingeführt.[1][2] Bei verteilten Anwendungen werden im handelt es sich im Allgemeine um strikte Schichtenarchitekturen. Jede Schicht kann auf einem eigenen Rechner laufen (= Verteilung). Die klassische 2-Schichtenarchitektur „Client-Server“ wurde zunächst zu einer 3-Schichtenarchitektur erweitert. Zwischen Client und Server wurde eine Mittelschicht („Middleware“) als zusätzliche Abstraktionsschicht eingefügt.
Theoretisch kann es beliebig viele weitere Schichten geben. Web-Anwendungen werden häufig als 4-Schichtenanwendungen realisiert: Browser, Web Server, Application Server und Datenserver. Die strikte Architektur verbietet es hier beispielsweise, dass der Web Server direkt mit dem Daten Server kommuniziert. Die Kommunikation muss immer über den Application Server erfolgen.
- Two-Tier Application.png
Zweischichten-Architektur: Client/Server-Architektur
- Three-Tier Application.png
Dreischichten-Architektur: Client-Server-Architektur mit Middelware
- Four-Tier Application.png
Vierschichten-Architektur: Web-Server-Architektur
MVC
- VCM-Schichtenarchitektur 01.png
- VCSM-Schichtenarchitektur 01.png
- VCLSD-Schichtenarchitektur 01.png
- CVM-Schichtenarchitektur 01.png
Quellen
- ↑ Eckerson, Wayne W. “Three Tier Client/Server Architecture: Achieving Scalability, Performance, and Efficiency in Client Server Applications.” Open Information Systems 10, 1 (January 1995): 3(20)
- ↑ Schneider, Werner (2001)
- Kowarschick, W.: Multimedia-Programmierung
- WikipediaEN:Multitier architecture
- Wikipedia:Schichtenarchitektur