,QKDOWVYHU]HLFKQLV
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
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
4
EELOGXQJVYHU HLFKQLV
Seite
Abbildung 1: Ein-Ebenen Architektur mit PCs 9
Abbildung 2: Zwei-Ebenen Architektur 9
Abbildung 3: Drei-Ebenen Architektur 10
Abbildung 4: Schnittstellen des Client Tiers 13
Abbildung 5: Übersicht Web Tier 15
Abbildung 6: EJB Tier Interaktionen mit anderen Tieren 16
Abbildung 7: Die Schnittstellen des EIS Tiers 17
Abbildung 8: Aufbau des Microsoft NET Frameworks 22
7DEHOOHQYHU HLFKQLV
Tabelle 1: Technologievergleich 26
5
$OOJHPHLQH(LQIKUXQJ
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.
6
0XOWL7LHU$UFKLWHNWXUHQ
'HILQLWLRQ7LHU
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 (QWZLFNOXQJ
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
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)
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 0XOWL7LHU$UFKLWHNWXUW\SHQ
Im Allgemeinen unterscheidet man zwischen drei verschiedenen Architekturtypen, welche sich im Lauf der Zeit entwickelt haben und jeweils eine Weiterentwicklung der vorangegangenen Architektur darstellen.
7LHU$UFKLWHNWXU
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.
3 Vgl. http://www.fh-sbg.ac.at/~theistra/etc/seminars/dp/SWE_12_Ortner_Multi_Tier.pdf (13.11.2001)
8
7LHU$UFKLWHNWXU
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.
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)
9
Quote paper:
Stefan Forner, 2001, Möglichkeiten zur Umsetzung von Multi-Tier-Internetapplikationen am Beispiel von Sun One und Microsoft .Net, Munich, GRIN Publishing GmbH
This text can be quoted and accessed from this url:
Embed
DOI
Existieren allgemeine Risikofaktoren für die Prognose der zu erwartete...
Business economics - Banking, Stock Exchanges, Insurance, Accounting
Scholary Paper (Seminar), 25 Pages
Entwicklung und Veränderung der Fußball-Fankulturen aufgrund von Überk...
Diploma Thesis, 159 Pages
Faktormodelle und Kapitalkosten (Factor Models and the Cost of Capital...
Business economics - Business Management, Corporate Governance
Diploma Thesis, 63 Pages
Advanced Planning Optimizer - ein Vergleich der marktgängigen Software
Business economics - Trade and Distribution
Scholarly Research Paper, 24 Pages
Outsourcing und Betriebsübergang
Law - Civil / Private / Trade / Anti Trust Law / Business Law
Elaboration, 43 Pages
Cotton Mather's "The Wonders of the Invisible World" and...
English Language and Literature Studies - Literature
Termpaper, 15 Pages
Rechnungslegungsvorschriften großer Kapitalgesellschaften im internati...
Business economics - Accounting and Taxes
Diploma Thesis, 68 Pages
Entwicklung einer Web-Anwendung auf Basis von JavaServer Pages und Ser...
Computer Science - Programming
Diploma Thesis, 144 Pages
Der weltweite Erfolg des Apple i-Pods
Anhand welcher Unternehmensstr...
Business economics - Marketing, Corporate Communication, CRM, Market Research
Scholary Paper (Seminar), 15 Pages
Stefan Forner has published the text Möglichkeiten zur Umsetzung von Multi-Tier-Internetapplikationen am Beispiel von Sun One und Microsoft .Net
Stefan Forner has uploaded a new text
Teaching Reading to Students Who Are At-Risk or Have Disabilities: A M...
William D. Bursuck, Mary Damer
McAd Developing and Implementing Windows-Based Applications with Micro...
Kirk Hausman, Kalani Kirk Hausman, Ed Tittel
0 comments