Web-Design: Architektur

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

E-Commerce Shop System
Semesterarbeit von Dieter Lorenz, Sebastian Galenski, Stephan Bury
Webinterface für eingebettete Systeme in Dual-Server-Architektur
Aufbau des Internets Überblick Prof. Dr. T. Hildebrandt
Basis-Architekturen für Web-Anwendungen
Was ist J2EE Die Vorteile von J2EE J2EE Modell Die Komponente von J2EE
Kurze Einführung in ASP
Übung 5 Mehrstufige Client/Server-Systeme mit Enterprise Java Beans
WS06/07Prof. Dr. Andreas Schmietendorf1 Programmierung von Client/Server- Anwendungen Übersicht zur Vorlesung.
Datenbankzugriff im WWW (Kommerzielle Systeme)
Objektrelationales Mapping mit JPA
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Daniel Höfler Markus Thurner XMLApplicationPlatform Siemens OpenStage 60/80.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
Information und Technik Nordrhein-Westfalen Single Sign On mit CAS Düsseldorf, Single Sign On für Webanwendungen am Beispiel von CAS.
Architektur von Web- Informationssystemen. © Prof. T. Kudraß, HTWK Leipzig Techniken zur DB-Server- Anbindung Client-Seite Java Applet ActiveXPlugInCGISSIServer.
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
Struts Seminar Javabasierte Webanwendungen. Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Fachbereich Informatik Lehrgebiet Datenverwaltungssysteme Aufgabe GBIS (TPCW-Benchmark) Boris.
XML in Client-Server und GRID Architektur
Modellierung der Zugriffslogik auf Datenbanktabellen Software Component Technology for Distributed Applications Andreas Fink.
JAVA RMI.
Introducing the .NET Framework
Projekt Web Engineering
Remote Methode Invocation (RMI)
Zukunft des Webs? Dennis Beer Christian Blinde
Web-Anwendungsentwicklung à la MVC. Übersicht Über Georg Heeg Ein industrielles Beispiel Web-Anwendungen aus Smalltalker-Sicht MVC für das Web Programmierdemo.
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Evaluierung des ITU-T.124 Telekonferenzstandards
Web Services Die Zukunft netzbasierter Applikationen iternum GmbH Alexanderstraße Frankfurt/Main
EJB-Applikationsserver
Präsentation von Sonja Pathe
Aichinger Christian, Strasser Jürgen. Inhalt JSF EJB Praxis - Integration.
Basiswissen für Partner und interessierte Kunden Technologie.
Institut für Wirtschaftsinformatik und Anwendungssysteme
Grundlagen: Client-Server-Modell
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Servlets Servlets und relevantes API Servlets & SQL via JDBC Implementierungs - Spezifika Architektur Überblick Vertikaler Prototyp / Spezifikation.
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.
Beschreiben Sie eine Web Interaktion mittels Java Applets.
CGI (Common Gateway Interface)
Management- und Web Services- Architekturen
Oliver Spritzendorfer Thomas Fekete
Datenanbindung in Webapplikationen
Datenbankanbindung in Web-Applikationen
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Netzwerke.
ATLAS2000 Modellintegration in digitalen Atlanten Konzepte und Lösungsvorschläge am Beispiel ATLAS2000.
MSDN TechTalk Anwendungen integrieren in Microsoft Dynamics CRM 4.0.
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
W W W - World Wide Web. Das World Wide Web kommt aus dem Englischen und bedeutet ‚Weltweites Netz‘ ist ein über das Internet abrufbares Hypertext-System.
Online GIS Online GIS – Der Nutzer Matthias Hofschen, ESRI Germany ESRI EUROPEAN USER CONFERENCE.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
->Prinzip ->Systeme ->Peer – to – Peer
Web-Applikations-Server
Vortrag - Diplomarbeiten (HS I)
Datenbanken im Web 1.
Java Server Pages Technologie zur Erzeugung dynamischer Webseiten basierend auf Java-Servlets Blockseminar Wintersemester 2001/2002Jochen Pfeiffer Seite.
J2EE-Motivation(I) Anforderungen an heutige Software u.a.:
EJB Architektur für große Web - Applikationen Gerald Weber
WINLearn Technische Umsetzung. Basistechnologie Oberfläche in HTML JSP (JavaServerPages) zur Datenauswertung Datenhaltung: Datenbank oder Filesystem JDBC.
ORB – Konzepte Ist – Analyse der betrieblichen Notwendigkeiten, Anforderungsableitung an moderne Lösungskonzepte, alternative ORB – Konzepte mit Zukunft,
Eine komplexe Netzanwendung Webserver und Datenbankserver im Netzwerk in einer Anwendung einrichten.
© 2008 TravelTainment The Amadeus Leisure Group Webanwendungen mit Java - HttpServlets 17.Dezember 2010 Sebastian Olscher Erstprüfer: Hon.-Prof. Dr. H.
Verteilte Anwendungen: J2EE
 Präsentation transkript:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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