ejb architektur für große web - applikationen gerald weber 9.2.2001

16
EJB Architektur für EJB Architektur für große große Web - Applikationen Web - Applikationen Gerald Weber 9.2.2001

Upload: daniela-schmitt

Post on 06-Apr-2016

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

EJB Architektur für großeEJB Architektur für großeWeb - ApplikationenWeb - Applikationen

Gerald Weber9.2.2001

Page 2: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

EJB -ArchitekturEJB -Architektur

Klassische TP-Monitor Applikation zum Vergleich

Übertragung auf EJBEntwurfsprobleme in den einzelnen

SchichtenVereinfachungen

Page 3: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

TP-MonitoreTP-Monitore

TP-Heavy Applikationen:>> 10.000 Clients

Typische Mainframe AnwendungenProprietäre Technologien.

Page 4: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Datenbanken/Filesysteme

Transaction Server

Workflow Server(Request Queues)

Clients

Presentation Server

ArchitekturArchitektur

Firewall

Page 5: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Transaction ServerTransaction Server

Abstraktion von der Datenmodellierung

Stellen die Daten als Business Objects dar, deren Interface sich selten ändert.

Entsprechen den Entity Beans

Page 6: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Workflow ServerWorkflow Server

Gleichartige Server.Führen Business Rules aus, die sich

schneller ändernHaben zwischen Transaktionen

keinen Zustand, dies erlaubt Clustering.

Benutzen Nested Transactions

Page 7: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Request QueuesRequest Queues

Workflow Server entnehmen daraus Requests transaktional, d.H. bei abort ist der Request wieder in der Queue.

Garantieren also Request-Abarbeitung.

Clients erhalten nur Business-Exceptions

Page 8: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Presentation ServerPresentation Server

Zwei Teile: Session Management und Presentation.

Sind nicht Teil des zentralen, Transaktionalen Teils.

Können längerlebige Daten für komplexe Integrity-constraints enthalten. (Model-View?)

Page 9: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

ClientsClients

Ultra-Thin Clients: Stellen nur eine Seite dar

Sehr leichtgewichtige Verbindungen (belegen keine Serverressourcen.)

Alternative z.B. Clients enthalten Präsentationsschicht, Cache.

Page 10: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Entity BeansEntity Beans

Java Objekte, deren Attribute persistent sind.

Get-Methoden: Feingranular oder als Object-By-Value.

Business Methoden abstrahieren von der Datenmodellierung.

Page 11: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Business RulesBusiness Rules

werden realisiert als stateless Session Beans.

Können Daten lokal cachen, aber nur für eine Transaktion -

sonst komplexe Überprüfungen bei Transaktionsende.

Page 12: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

(Stateful) Sessions(Stateful) Sessions

Zustand für einen Benutzer.EJB: Stateful Session Bean:

Kann auf Platte ausgelagert werden (Skalierbarkeitsanforderung).

Page 13: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

PräsentationsschichtPräsentationsschicht

Kommuniziert mit Business-Logik nur über serialisierte Daten.

Keine Referenzen auf Business-Objekte.

Transfrormiert das Modell der serialisierten Daten in das Darstellungsmodell.

Page 14: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Entity BeansEntity Beans

Java Objekte mit persistenten Attributen. Assoziationen nicht über Referenzen, sondern über Schlüssel.

Extraktion von Finder-Methoden und update-Methoden aus der Systemspezifikation.

Page 15: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

PräsentationPräsentation

Oberste Schicht: Enthäelt Layout.Zweitoberste Schicht: Nur Daten und

Links.Drittoberste Schicht: Operationen in

Servlets. ->Links: ServletaufrufeForms: Editierbare Links.

Page 16: EJB Architektur für große Web - Applikationen Gerald Weber 9.2.2001

Business LogicBusiness Logic

Transaktional: Eine Methode in Transaktionsklammern:– Kann lokalen Cache verwenden.– Updates werden durchgeschrieben.