Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Web-Architektur1 Web-Design: Architektur Ziele dieses Abschnitts: –Überblick über die drei Grundmuster –Entscheidungsunterstützung zur Auswahl und Allokation.

Ähnliche Präsentationen


Präsentation zum Thema: "Web-Architektur1 Web-Design: Architektur Ziele dieses Abschnitts: –Überblick über die drei Grundmuster –Entscheidungsunterstützung zur Auswahl und Allokation."—  Präsentation transkript:

1 Web-Architektur1 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)

2 Web-Architektur2 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

3 Web-Architektur3 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.

4 Web-Architektur4 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.

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

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

7 Web-Architektur7 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.

8 Web-Architektur8 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.

9 Web-Architektur9 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 DBs konstuieren und exekutiern sie SQL Anweisungen zwecks Zugriffs auf die Daten der DB.

10 Web-Architektur10 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.

11 Web-Architektur11 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.

12 Web-Architektur12 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.

13 Web-Architektur13 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.

14 Web-Architektur14 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 HTTP Web Server Server Pages Application Server Business Objects

15 Web-Architektur15 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.

16 Web-Architektur16 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.

17 Web-Architektur17 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: MIcrosofts Protokoll für die Inter-Objekt-Kommunikation verteilter Objekte. –IIOO: Internet Inter-ORB Protocol ist OMGs CORBA Protokoll für die Inter-Objekt Kommunikation über das Internet oder ein TCP/IP-basiertes Netzwerk. –RMI: Remote Method Invocation ist Javas Weg der Inter-Objekt-Kommunikation. RMI kann CORBAs IIOP implementiert werden.

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

19 Web-Architektur19 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.


Herunterladen ppt "Web-Architektur1 Web-Design: Architektur Ziele dieses Abschnitts: –Überblick über die drei Grundmuster –Entscheidungsunterstützung zur Auswahl und Allokation."

Ähnliche Präsentationen


Google-Anzeigen