Lade Inhalt...

Möglichkeiten zur Umsetzung von Multi-Tier-Internetapplikationen am Beispiel von Sun One und Microsoft .Net

Studienarbeit 2001 33 Seiten

Informatik - Wirtschaftsinformatik

Leseprobe

Inhaltsverzeichnis

Abbildungsverzeichnis

Tabellenverzeichnis

1 Allgemeine Einführung

2 Multi-Tier-Architekturen
2.1 Definition Tier
2.2 Entwicklung
2.3 Multi-Tier-Architekturtypen
2.3.1 1-Tier-Architektur
2.3.2 2-Tier-Architektur
2.3.3 3-Tier-Architektur
2.4 3-Tier-Architekturschichten im Detail
2.5 Vorteile einer Multi-Tier-Architektur

3 Vergleich zwischen dem Sun One und dem Microsoft .NET Framework
3.1 Aufbau von Sun One
3.1.1 Umsetztung der Drei-Tier-Architektur
3.1.2 Technologien des Sun One Frameworks
3.1.2.1 Java Servlets
3.1.2.2 Java Server pages (JSPs)
3.1.2.3 Java Beans
3.1.2.4 Enterprise Java Beans (EJBs)
3.1.2.5 JDBC
3.1.2.6 JTA
3.1.2.7 JNDI
3.1.2.8 RMI
3.1.2.9 JMS
3.1.2.10 CORBA
3.1.2.11 Java Conectors Extensions
3.2 Aufbau von Microsoft .NET
3.2.1 ASP .NET
3.2.2 .NET Managed Components
3.2.3 ADO .NET
3.2.4 Host Integration Server
3.3 Vor- und Nachteile von Sun One und Microsoft .NET
3.3.1 Portabilität
3.3.2 Skalierbarkeit
3.3.3 Migrationseignung
3.3.4 Kompatibilität zu bestehenden Systemen
3.3.5 Performance
3.3.6 Kosten
3.3.7 Verwendete Sprachen
3.3.8 Entwicklerunterstützung
3.3.9 Sicherheit und Robustheit
3.3.10 Einbindung von Web Services

4 Zusammenfassung und Ausblick

Literaturverzeichnis

Abbildungsverzeichnis

Abbildung 1: Ein-Ebenen-Architektur mit PCs

Abbildung 2: Zwei-Ebenen-Architektur

Abbildung 3: Drei-Ebenen-Architektur

Abbildung 4: Schnittstellen des Client Tiers

Abbildung 5: Übersicht Web Tier

Abbildung 6: EJB Tier Interaktionen mit anderen Tieren

Abbildung 7: Die Schnittstellen des EIS Tiers

Abbildung 8: Aufbau des Microsoft .NET Frameworks

Tabellenverzeichnis

Tabelle 1: Technologievergleich

1 Allgemeine Einführung

Die weit verbreitete Nutzung des Internets hat starken Einfluss auf die Entwicklung von Softwarelösungen in der heutigen Zeit genommen. Wurden früher oft nur statische bzw. einfache dynamische im Internet angeboten, werden heutzutage immer komplexere Applikationen für das Internet entwickelt, die dem User eine Vielzahl von Möglichkeiten eröffnen. Diese reichen von der Abwicklung von Bankgeschäften über Online-Shopping bis hin zu Online-Konferenzen. Dabei werden auch verschiedene Vertriebskanäle, wie z.B. Web, WAP, EDI, usw. benutzt.

Um dies zu ermöglichen, war eine neue Grundlage für die verwendeten Applikationen nötig. Besonders geeignet ist dafür die Multi-Tier-Architektur, die den Client der klassischen Client/Server Architektur in Frontend und Businesslogik aufspaltet und dadurch einen hohen Grad an Skalierbarkeit und Flexibilität erreicht. Da man den Webbrowser als standardisierte Benutzerschnittstelle verwendet, ist auch eine weitestgehende Plattformunabhängigkeit gegeben.

Es gibt viele Möglichkeiten Muli-Tier-Applikationen umzusetzen, wobei verschiedene Technologien wie Servlets, Java Beans, Java Server Pages (JSP), XML, CORBA, Active Server Pages (ASP), usw. verwendet werden. Dadurch ergibt sich ein gewisser Freiraum, um seine Applikationen zu designen, andererseits ist der Entwicklungsaufwand höher als bei einem vorgegebenem Framework. Aus diesem Grund greift man oft auf vorgefertigte Frameworks von Drittfirmen zurück, die sich für die entsprechende Anwendung eignen.

Seid kurzem gibt es auch ein neues Framework, das von Microsoft spezifiziert wurde, das .Net-Framework, welches Grundlage für die zukünftige Strategie von Microsoft sein soll. In direkter Konkurrenz dazu steht das J2EE-Framework von Sun Microsystems, welches in Sun One enthalten ist.

Im weiteren Verlauf werde ich auf den allgemeinen Aufbau von Multi-Tier-Applikationen eingehen. Außerdem will ich diesbezüglich die Frameworks von Microsoft und Sun Microsystems vergleichen, indem ich den Aufbau und die jeweiligen Features gegenüberstelle.

2 Multi-Tier-Architekturen

2.1 Definition Tier

Das Wort „Tier“ stammt aus dem Französischen, wo man darunter den Rang innerhalb einer Soldateneinheit verstand.

Heutzutage versteht man darunter im Zusammenhang mit der Informatik eine Reihe oder eine Schicht innerhalb einer Serie von ähnlich angeordneten Objekten. Bei der Programmierung können Teile von Programmen zwischen verschiedenen Tieren, die auf verschiedenen Computern in einem Netzwerk liegen, verteilt werden. Solche Programme nennt man „tiered, multitier oder multitiered“.

Die häufigste Art einer Multi-Tier-Architektur ist dabei wahrscheinlich das 3-Tier Applikationsmodell auf welches ich später noch genauer eingehen werde.[1]

2.2 Entwicklung

Die Multi-Tier-Architektur hat ihren Ursprung im Bereich der Verteilten Systeme. Dort wurde Mitte der achtziger Jahre das Client-Server Modell, „das als Spezialfall einer Interaktionsbeziehung zwischen zwei Objekten aufgefasst werden kann“[2], entwickelt. Es beruht auf der Zusammenarbeit eines Dienstleisters (Server) und eines Klienten (Client).

Der Client fordert vom Server eine Dienstleistung an, die dieser über eine bekannte Schnittstelle zur Verfügung stellt. Dazu müssen die Adresse des Servers und der Methodenaufruf zwischen den zwei jeweiligen Objekten bekannt sein.

Da der Client und der Server sich meistens auf zwei unterschiedlichen Rechnern befanden musste eine Möglichkeit geschaffen werden, um auch über Rechnergrenzen hinweg in unterschiedlichen Netzen miteinander zu kommunizieren. Zu diesem Zweck wurde meist das RPC (Remote Procedure Call) Verfahren verwendet.

Später wurde das Client-Server Modell, welches als Basismodell gilt, zur eigentlichen Multi-Tier oder n-Tier Architektur erweitert, in dem eine weitere Schicht dazu kam, auf der die Applikationslogik abläuft. Dadurch will man eine klarere Trennung zwischen den Informationen und der Darstellung dieser erreichen. Man muss nun über eine Art „Informationsbus“ miteinander kommunizieren, welcher verschiedene so genannte Business Services zur Verfügung stellt. Die Dienste selber sind für die Clients unsichtbar, deswegen werden sie häufig auch als Thin-Clients bezeichnet, da sie nur noch wenig Logik beinhalten. Um die Trennung von Logik und Präsentation aufrecht zu erhalten wird die Benutzeroberfläche separat von der Transaktions- und Fachlogik programmiert.

Das eigentliche Ziel von Multi-Tier-Architekturen ist somit die Trennung der Bereiche durch Schnittstellen. Die Zugriffe angrenzender Schichten aufeinander werden dabei über diese Schnittstellen definiert. Deswegen zeichnet sich die n-Tier Architektur auch durch Integrations- und Leistungsfähigkeit aus und ist somit bestens dazu geeignet Geschäftprozesse mit den notwendigen Technologien reibungslos zu verbinden.[3]

2.3 Multi-Tier-Architekturtypen

Im Allgemeinen unterscheidet man zwischen drei verschiedenen Architekturtypen, welche sich im Lauf der Zeit entwickelt haben und jeweils eine Weiterentwicklung der vorangegangenen Architektur darstellen.

2.3.1 1-Tier-Architektur

Die 1-Tier-Architektur wird auch als monolithisches Modell bezeichnet. In dieser wird auf einem Thin-Client, meist einem Terminal, die Präsentation dargestellt, während die gesamte Anwendungslogik sowie alle Datenbankzugriffe auf einem zentralen Rechner ablaufen.

Ein bekanntes Beispiel für eine Ein-Ebenen-Architektur ist R2 von SAP. Aber auch andere Anwendungen, die viele Terminals benützen basieren auf dieser Architektur. Darunter fallen viele Bankanwendungen oder auch Applikationen bei Reisebüros und –veranstaltern. Man benutzte diese Architektur, weil man auf gemeinsame Daten zugreifen konnte, die Terminals verhältnismäßig billig waren und eine hohe Verfügbarkeit gewährleistet war.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 1: Ein-Ebenen-Architektur mit PCs[4]

2.3.2 2-Tier-Architektur

Unter dieser Architektur versteht man das „typische“ Client-Server Modell. Der Server hat dabei die Aufgabe im Backend die Datenbank zu verwalten. Die Darstellung erfolgt auf dem Client, der auch die Benutzerschnittstelle beinhaltet. Je nach dem was sich besser eignet läuft die jeweilige Applikation entweder auf dem Server oder auf dem Client ab.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 2: Zwei-Ebenen-Architektur[5]

2.3.3 3-Tier-Architektur

Abbildung in dieser Leseprobe nicht enthalten

Bei der 3-Tier-Architektur wird eine so genannte Middle-Tier Schicht eingefügt, die häufig auch als Applikationsserver-Schicht bezeichnet wir. Dort befindet sich die Applikationslogik. Das Backend-Tier beinhaltet weiterhin die Daten und das Client-Tier übernimmt die Präsentation und die Benutzerschnittstelle.

Abbildung 3: Drei-Ebenen-Architektur[6]

2.4 3-Tier-Architekturschichten im Detail

In der Regel werden moderne Internetapplikationen heute als Multi-Tier-Architektur entwickelt, wobei meistens die 3-Tier-Architektur zum Einsatz kommt. Diese besteht aus drei Schichten, welche verschiedene Aufgaben übernehmen.

Das Front End dient als Schnittstelle zum Kunden. Dort findet die Kommunikation und Interaktion mit diesem statt. Um eine entsprechende Performance zu erreichen, übernehmen mehrere kleine, schnelle Einheiten die Aufgaben. Damit wird eine Lastverteilung erzielt. In der Regel wird ein langsames Front End auch mit schlechtem Kundenservice gleichgesetzt, deswegen sollte man dafür sorgen, dass auch bei unvorhergesehenen Anforderungen das System entsprechend reagiert. Auch ist es wichtig, dass das Front End ständig verfügbar ist und eine sichere Datenübertragung gewährleistet ist. Ein Faktor, der in letzter Zeit immer wichtiger geworden ist, stellt die Unterstützung für mobile Endgeräte wie PDAs, Handys, Notebooks, Settopboxen usw. dar.

Die gesamte Anwendungslogik wird vom Mid-Tier gesteuert. Dort werden Daten die vom Back End kommen verarbeitet und für das Front End aufbereitet. Das Mid-Tier kann aus mehreren Ebenen bestehen, die untereinander kooperieren oder auch völlig unabhängig voneinander sind. Da die Applikationsserver gleichzeitige Anfragen von mehreren Clients bearbeiten müssen können, ist die Skalierbarkeit und Leistungsfähigkeit der Server wichtig, damit die Daten nicht mit großer Verzögerung an die Clients übertragen werden.

Das Back End verwaltet die Datenbanken. Wichtig ist die Verfügbarkeit und Ausfallsicherheit dieser Server, die meistens durch Cluster- bzw. Hochverfügbarkeitssoftware gewährleistet werden kann. Auf dem Back End befinden sich auch die nötigen Tools zur Administration der Datenbanken.

[...]


[1] Vgl. http://whatis.techtarget.com/definition/0,,sid9_gci213144,00.html (13.11.2001)

[2] Vgl. http://www.fh-sbg.ac.at/~theistra/etc/seminars/dp/SWE_12_Ortner_Multi_Tier.pdf (13.11.2001)

[3] Vgl. http://www.fh-sbg.ac.at/~theistra/etc/seminars/dp/SWE_12_Ortner_Multi_Tier.pdf (13.11.2001)

[4] Vgl. http://www.fh-bochum.de/fb6/personen/bluemel/wirtschaftsinformatik/

download/scripte/verteiltesysteme.pdf (08.11.2001)

[5] Vgl. http://wwwdbis.informatik.uni-kl.de/courses/seminar/SS2001/ausarbeitung5.pdf (10.11.2001)

[6] Vgl. http://wwwdbis.informatik.uni-kl.de/courses/seminar/SS2001/ausarbeitung5.pdf (10.11.2001)

Details

Seiten
33
Jahr
2001
ISBN (eBook)
9783638143745
Dateigröße
806 KB
Sprache
Deutsch
Katalognummer
v6923
Institution / Hochschule
Duale Hochschule Baden-Württemberg, Stuttgart, früher: Berufsakademie Stuttgart – Wirtschaftsinformatik
Note
2,0
Schlagworte
Möglichkeiten Umsetzung Multi-Tier-Internetapplikationen Beispiel Microsoft

Autor

Teilen

Zurück

Titel: Möglichkeiten zur Umsetzung von Multi-Tier-Internetapplikationen am Beispiel von Sun One und Microsoft .Net