Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Web-Design: Architektur

Ähnliche Präsentationen


Präsentation zum Thema: "Web-Design: Architektur"—  Präsentation transkript:

1 Web-Design: Architektur
Ziele dieses Abschnitts: Überblick über die drei Grundmuster Entscheidungsunterstützung zur Auswahl und Allokation von Komponenten Vorverständnis für Vergleich mit der service-basierten Architektur (“Web Services“) Web-Architektur

2 Web-Design: Architektur
Web-Applikation: Erweiterung einer Web-Site um das Einbringen von Operationen einer Anwendung, die in Folge den Zustand eines Anwendungsfalls am Server aktualisieren. Eine Web-Applikation ist ein Client/Server SW System. Im Minimalfall werden folgende Komponenten benötigt: client browser web server application server, meist jedoch auch DB server Web-Architektur

3 Web-Design: 3 Architekturpatterns
Thin Web Client: Wird für Internet Applikationen verwendet, bei welchen kein Einfluss auf die Konfiguration des Client besteht. Über die Ausstattung des Client werden keine Annahmen getroffen. Thick Web Client: Ein architukturell signifikanter Teil der Anwendungslogik wird auf dem Client verarbeiet. Client-Server Kommunikation erfolgt über HTTP. Web Delivery: Neben HTTP werden Protokolle wie IIOP und DCOM verwendet, die ein Distributed Object System unterstützen. Der Web-Browser dient primär zu „Zustellzwecken“. Web-Architektur

4 Web-Architektur: Thin Web Client
Anwendung: Client minimal ausgestattet oder Austattung des Client nicht steuerbar/unbekannt Anwendungsbereich: e-Commerce, da ein möglichst weiter Kundenkreis erreicht werden soll Struktur: Alle wesentlichen Komponenten residieren am Server. Client-Browser und Web-Server kommunizieren über HTTP oder SSL (Secure Socket Layer), wobei die übertragene Information in „encrypteter“ Form übermittelt wird. Web-Architektur

5 Web-Architektur: Thin Web Client (Min.)
Web Server + Authentication +Cookie Mngmt. Application Server + Session State Browser + Cookies HTTP Server Pages + Java Servlets + ISAPI, +NSAPI + CGI + JSP HTML Pages + Forms +Input Element Web-Architektur

6 Web-Architektur: Thin Web Client – Erweiterung
Web Server Application Server Server Pages Account System Business Objects Legacy System Interface Persistence Mapping Persistence

7 Thin Client - Komponenten
Client Browser: Standardmäßiger HTML Browser mit Forms. Agiert als verallgemeinertes Benutzerinterface. Der Anwender verwendet den Browser, um Web Seiten (HTML oder Server Pages) anzufordern. Web Server: Ist der zentrale Zugriffspunkt aller Browser, die nur über den Web Server zugreifen. Abhängegig von der Anforderung, kann eine Server-seitige Verarbeitung (CGI, ISAPI,...) erfolgen. Das Ergebnis ist immer eine HTML Seite. HTML Seite: Eine Web Seite mit Interface und Content Information, die keiner Server-seitigen Verarbeitung unterliegt. Web-Architektur

8 Thin Client - Komponenten
Server Seite: Eine Seite, die einer Server-seitigen Verarbeitung bedarf. Beispiel: HTML Input Form; Typischerweise sind solche Seiten am Server als “scripted pages“ implementiert (ASP; Java Server Pages,...). Verarbeitung mittels eines Filters am Application-Server oder mittlels exekutierbarer Module wie ISAPI, NSAPI. Application Server: Die primäre Zuständigkeit für die Verarbetung Server-seitiger Anwendungslogik. Kann auf derselben Maschine liegen wie der Web-Server, ist jedoch logisch eine getrennte Komponente. Web-Architektur

9 Thin Client mit Datenbankanbindung
Die meisten Web-Applikationen verwenden eine DB zwecks Persistenz der Business Daten, andere benutzen einen TPM (transact. processing monitor). Die einfachste Art der Anbindung besteht darin, den Scripts in den Server Seiten direkten Zugriff auf die DB zu ermöglichen. Direkter Zugriff erfolgt unter Verwendung von Standardbibliotheken für den DB Zugriff, wie RDO (Remote Data Object) ADO (ActiveX Data Object), ODBC (Open Database Connectivity), JDBC, DBLib, ... Die Server Seiten kennen das DB Schema, für relationale DB‘s konstuieren und exekutiern sie SQL Anweisungen zwecks Zugriffs auf die Daten der DB. Web-Architektur

10 Thin Client mit Business Objects
Die Business Logic Komponente kapselt die An-wendungslogik ab, sie läuft am Application Server. Vorteil: andere Client Server Systeme können dieselbe Komponente verwenden, um dieselbe Anwendungslogik zu nutzen. Beispiel: Ein Front-end eines Geschäftes verwendet eine Web-SS mit Thin Client Architektur für alle Kundenaktivitäten, setzt aber für das Rechnungswesen, das einen komplexeren Datenzugriff erfordert, ein Clieent/Server System ein. – Beide Systeme (Front- und Back- end) greifen auf dieselbe Anwendungslogik am Application Server zu. Web-Architektur

11 Thin Client – Konsequenzen
Geeignet für Anwendungen, bei welchen die Antwortzeiten des Servers innerhalb einer Zeitspanne liegen, die von Benutzer akzeptiert wird, bzw. innerhalb der timeout Schranke des Client Browsers liegt. Ggf. Verwendung von periodischem Polling des Servers. Nur einfache Benutzerschnittstellen verwendbar. Da der Browser als gesamte Benutzerschnittstelle fungiert, stehen nur die Features entsprechend der verwendeten HTML Spezifikation zur Verfügung, also primär Texteingabefelder, Checkboxes, Buttons. Web-Architektur

12 Thick Client Architektur
Erweitert den Thin Client um die Verwendung von “Client-side Scripting“ und “Custom Objects“. Anwendung: für Web-Applikationen, bei welchen eine bestimmte Client Konfiguration und Browser Version vorausgesetzt werden kann. Anwendungsbereich: Darbieten erweiterter Benutzerschnittstellen durch Cleint-side Scripts, Applets, Controls, Plug-Ins,... . Java Applets und ActiveX Controls werden gern verwendet, um hierarchische Strukturen für Controls und Views zu erzeugen. Web-Architektur

13 Thick Client Architektur
Kommunikation zwischen Cleint und Server via HTTP – verbindungsloses (connectionless) Protokoll. Client sendet Informationen nur während er Seiten anfordert. Meist keine offene Verbindung zwischen Client und Server. - Client-side scripts (VBScript, JavaScript, eingebettet in einer HTML Seite), - ActiveX controls (COM Objekte), - Java applets (kompilierte Komponenten) interagieren nur mit Objekten, die sich am Client befinden. Web-Architektur

14 Thick Client Architektur
Persistenz und Legacy wie bei der Ergänzung zum Thin Client. Java Applet ActiveX Control Browser HTML Pages XML Document Client Script Server Pages HTTP Web Server Application Server Business Objects Web-Architektur

15 Thick Client Architektur - Konsequezen
Portabilität über verschiedene Browser Implementierungen; Nicht alle HTML Browser unterstützen VBScript oder JavaScript oder ActiveX Komponenten; Wenn Client-Scripting, Applets, Kontrollelemente benutzt werden, muss für jede Client Konfiguration die volle Menge der Testszenarien durchgeführt werden; Verschiedene Browser können sich verschieden verhalten, auch wenn derselbe Source-Code existiert. Web-Architektur

16 Web-Delivery Architektur
Das Web wird primär als Zustelldienst für ein sonst traditionelles, verteiltes Cliet/Server System. Wird verwendet, wenn man signifikanten Einfluss auf die Klienten Applikation und das Netzwerk hat. größte Bedeutung: existierende Business Object Anwendungen werden netzfähig gemacht. Direkte und persisitente Kommunikation zwischen Client und Server sind möglich. Wird häufig mit einem oder beiden der anderen Patterns verwendet. Web-Architektur

17 Web-Delivery Architektur - Struktur
Signifikantester Unterschied zu den anderen Mustern: es kommen Protokolle (ggf. neben HTTP) zum Einsatz, die mächigere Interaktionen zwischen Client und Server zulassen. Beispiele: DCOM: Distributed COM: MIcrosoft‘s Protokoll für die Inter-Objekt-Kommunikation verteilter Objekte. IIOO: Internet Inter-ORB Protocol ist OMG‘s CORBA Protokoll für die Inter-Objekt Kommunikation über das Internet oder ein TCP/IP-basiertes Netzwerk. RMI: Remote Method Invocation ist Java‘s Weg der Inter-Objekt-Kommunikation. RMI kann CORBA‘s IIOP implementiert werden. Web-Architektur

18 Web Delivery Architektur Pattern
Browser ActiveX Client components Java Applet HTTP RMI DCOM Web Server Application Server IIOP HTML Pages Server Pages ActiveX Server components Business Objects Enterprise JavaBeans Merchant account interfaces Legacy system Interfaces Persistence Mapping Persistence Web-Architektur

19 Zusammenfassung Die Sicht der Software Architektur beschreibt die architekturell signifikanten Komponenten auf höchstem Niveau. (UML Packages, Subsysteme) Thin Clients beruhen auf den nur grundlegendsten Fähigkeiten von Browsern. Die Anwendungslogik liegt i.A. am Server. Thick Clients verwenden Scripts, Applets, ActiveX Components, um Anwendungslogik am Client auszuführen. Mächtigere Benutzerschnittstellen sind möglich. In Web-Delivery Systemen partizipiert der Client an einem System verteilter Objekte und kommuniziert direkt mit den Servern, welche die Anwendungslogik tragen. Die Architekturmuster sind kombinierbar. Web-Architektur


Herunterladen ppt "Web-Design: Architektur"

Ähnliche Präsentationen


Google-Anzeigen