Zusammenfassung und Ausblick bzgl. Application Server

Werbung
Vorlesung “Einführung in Datenbanksysteme“ WS 1999/2000
© F. Matthes, J.W. Schmidt
10. Ausblick
Einführung in Datenbanksysteme
Application Server 10.2.1
10.1 Zusammenfassung
Datenmodelle
RDM (Kap. 3)
NDM, HDM (Kap. 4)
Datenbanksysteme und ihre
Realisierung
Transaktionen (Kap. 8)
Architekturen (Kap. 9)
Anwendungen
•Digitale Bibliotheken
•SAP R/3
•Multimedia-Datenbanken
•Online-Redaktionssysteme
OODM (Kap. 5)
Objektrelationale Systeme (Kap. 6)
New: Application Server (Kap. 10)
Einführung in Datenbanksysteme
Application Server
Application Server 10.2.2
1
Vorlesung “Einführung in Datenbanksysteme“ WS 1999/2000
© F. Matthes, J.W. Schmidt
10.2 Application Server
Einführung in Datenbanksysteme
Application Server 10.2.3
Database Server
SELECT NAME FROM emp WHERE empno “99-9-99“
DBMS
client
“John Smith“
db
the user interface runs on the client
the database lives on the server
the business logic is performed on the client, updating shared data by sending streams
of SQL to the server
Einführung in Datenbanksysteme
Application Server
Application Server 10.2.4
2
Vorlesung “Einführung in Datenbanksysteme“ WS 1999/2000
© F. Matthes, J.W. Schmidt
Application Server
DB server
getEmployeeName(„99-9-99“)
Application
Server
Client
“John Smith“
db
the business methods run on the server
the client requests execution of the methods from the server
the client and the server will typically use a protocol that represents a
conversation at the level of business transactions, instead of the level of tables
and rows
Einführung in Datenbanksysteme
Application Server 10.2.5
n-Tier Systems
The so-called 3-tier systems place an intermediate component, middleware,
between the client and the database.
Multiple tiers provide a flexibility and interoperability that has resulted in systems
with more than these three layers of service.
n-Tier systems are generalizations of three-tier systems, each layer of software
providing a different level of service to the layers above and beneath it.
The n-tier perspective considers the network to be a pool of distributed services,
rather than simply the means for a client to accesses a single server.
Einführung in Datenbanksysteme
Application Server
Application Server 10.2.6
3
Vorlesung “Einführung in Datenbanksysteme“ WS 1999/2000
© F. Matthes, J.W. Schmidt
Functionality of a Middleware
A transaction-processing monitor, a type of middleware
receives streams of requests from many clients;
balances the load between multiple servers;
provides failover when a server fails and manages transactions on a client’s
behalf;
provides communications protocol translation;
consolidates requests
heterogeneous servers;
and
responses
between
clients
and
multiple
provides service metering and network traffic information.
Einführung in Datenbanksysteme
Application Server 10.2.7
Component Model
“A software component is a unit of composition with contractually specified
interfaces and explicit context dependencies only. A software component
can be deployed independently and is subject to composition by third
parties.” (Workshop on Component-Oriented Programming, ECOOP,
1996.)
CORBA (Common Object Request Broker Architecture) is an architecture that allows
objects within applications — even objects written in different languages — to run on
separate machines, depending on the needs of a given application
Enterprise JavaBeans, which is designed to be compatible with CORBA, is another
entry into the component-oriented application-server ring.
Einführung in Datenbanksysteme
Application Server
Application Server 10.2.8
4
Vorlesung “Einführung in Datenbanksysteme“ WS 1999/2000
© F. Matthes, J.W. Schmidt
CORBA
What is CORBA?
❏ Common Object Request Broker Architecture
❏ Communication infrastructure for distributed objects
❏ Allows a heterogeneous, distributed collection of objects to collaborate
transparently
What is CORBA good for?
❏ Developing distributed applications
❏ Locating remote objects on a network
❏ Sending messages to those objects
❏ Common interface for transactions, security, etc.
❏ CORBA Services (more later)
Einführung in Datenbanksysteme
Application Server 10.2.9
Enterprise JavaBeans (EJBs)
The components are hosted by application server.
EJBs take care of the low-level system details of managing:
❏
❏
❏
❏
❏
❏
❏
transactions
persistence
threads
load balancing
messaging
naming
.....
The developers can concentrate just on the business logic (though, it’s always
possible to get "under the hood" and customize these lower-level services).
Einführung in Datenbanksysteme
Application Server
Application Server 10.2.10
5
Vorlesung “Einführung in Datenbanksysteme“ WS 1999/2000
© F. Matthes, J.W. Schmidt
Goal
The enterprise developer no longer needs to write code that handles:
❏ transactional behaviour
❏ security
❏ connection pooling
❏ threading
because the architecture delegates this task to the server vendor
Einführung in Datenbanksysteme
Application Server 10.2.11
Java 2 Platform Enterprise Edition
il
Ma
Objects
i
sag
Mes
ng
Dir
e
cto
r
Data
base
Database
Objects
Mail
Transactions
Messaging
Directory
y
s
action
Trans
EJBs
Einführung in Datenbanksysteme
Application Server
J2EE
Application Server 10.2.12
6
Vorlesung “Einführung in Datenbanksysteme“ WS 1999/2000
© F. Matthes, J.W. Schmidt
J2EE Architecture
BluePrints
JSPs
Servlets
Transactions
Messaging
Container
Mail
Connectors
EJBs
Applets
JavaBeans
Tools
Java 2 SDK, Standard Edition
CORBA
Security
Einführung in Datenbanksysteme
Database
Directory
XML
Application Server 10.2.13
Inprise Application Server
Einführung in Datenbanksysteme
Application Server
Application Server 10.2.14
7
Herunterladen