Oracle9i Application Server

Werbung
SOFTWARE POWERS THE INTERNETSM
Oracle9i Application Server
Mathias Kaldenhoff
Geschäftsstelle HH
Leiter Systemberatung
Oracle Deutschland GmbH
[email protected]
Oracle9i Application Server
Integrierte, vollständige Middle-Tier-Plattform
9i
A
S
Oracle9i AS: Komponenten
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Oracle HTTP Server
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Oracle HTTP Server (Apache)
Funktion: HTTP Listener und Request Dispatcher
Implementation: Basiert auf dem Apache Server, C Code
Platz in der iAS Architektur: Empfängt HTTP Anfragen von den
Clients; liefert statische Dateien vom Dateisystem; leitet Anfragen zu
anderen 9iAS Diensten via “mods” (z.B. mod_jserv) weiter. Mods
sind in C implementiert und laufen im Adressraum des HTTP Server
Prozesses.
mod_jserv
HTTP
HTTPS
Oracle
HTTP
Server
(Apache)
AJP
Apache
JServ
mod_perl
mod_plsql
mod_ssl
....
Net8
Oracle8i
PL/SQL
Servlets, PL/SQL, Perl
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Web
Cache
Oracle
Wireless
Services
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
PERL
CORBA
Portal
BC4J
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
XML/XSL
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
mod_plsql
Funktion: HTTP Server Plug-in, welches Anfragen für stateless
PL/SQL und Java Stored Procedures weiterleitet. mod_plsql ist die
Weiterentwicklung der PL/SQL Cartridge im OAS
Implementation: Hauptsächlich C code
Platz in der iAS Architektur: HTTP Anfragen werden vom HTTP
Server zum mod_plsql weitergereicht, welches diese auf Stored
Procedures in der Databank abbildet. mod_plsql verwaltet
Datenbank Verbindungen anhand von DADs (database access
descriptors).
mod_jserv
HTTP
HTTPS
Oracle
HTTP
Server
(Apache)
mod_perl
mod_plsql
mod_ssl
Net8
Oracle8i
PL/SQL
PL/SQL
Toolkit
PL/SQL Server Pages (PSP)
Funktion: Generiert PL/SQL Prozeduren aus statischen Seiten, in
die dynamische, datenbankbasierte Inhalte eingebunden werden
können.
Statische
Seiten
loadpsp
mod_jserv
HTTP
HTTPS
Oracle
HTTP
Server
(Apache)
mod_perl
mod_plsql
mod_ssl
+ embeded
PL/SQL code
Net8
Oracle8i
PL/SQL
Code
Apache JServ
Funktion: Java Servlet Engine, unterstützt v. 2.0 der Servlet API
Implementation: 2 Hauptbestandteile. Die Engine ist 100%ig Java
und läuft innerhalb einer JVM. Anfragen werden über mod_jserv an
die Apache Jserv Engines verteilt (via AJP / Apache JServ Protokoll).
Platz in der iAS Architektur: HTTP Anfragen für Servlets werden
vom HTTP Server via mod_jserv zur JServ Servlet Engine
weitergeleitet. Die Engine kann sowohl lokal auf dem HTTP Server
Knoten, als auch remote auf einem anderen Rechner laufen.
mod_jserv
HTTP
HTTPS
Oracle
HTTP
Server
(Apache)
mod_perl
mod_plsql
mod_ssl
AJP
JDK JVM
RMI
Apache
JServ
IIOP
Oracle Servlet Engine (OSE)
Funktion: Java Servlet Engine, unterstützt v. 2.2 der Servlet API
Implementation: Hauptsächlich C und Java.
Platz in der iAS Architektur: Läuft in einer Oracle 8i JVM. Anfragen
werden über mod_ose weitergegeben.
Oracle8i JVM
Oracle HTTP
Server
mod_ose
HTTP/Net8
Servlet
....
OracleJSP (Java Server Pages)
Funktion: Übersetzer und Laufzeitumgebung für Java Server Pages
Implementation: OracleJSP ist in Java implementiert und läuft in
einer JVM.
Platz in der iAS Architektur: OracleJSP funktioniert als Übersetzer
oder als Teil einer Servlet Engine und dient dazu, aufgerufene JSPs
zu kompilieren und auszuführen.
mod_jserv
HTTP
HTTPS
Oracle
HTTP
Server
(Apache)
mod_perl
mod_plsql
mod_ssl
AJP
JDK JVM
RMI
Apache
JServ
IIOP
OracleJSP
Business Logic Services
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Oracle8i JVM
Funktion: Session-basierende Java VM und Container für EJB,
CORBA Servers, Servlets und JSPs. Auch zuständig für die
Ausführung von Java Stored Procedures.
Implementation: Hauptsächlich C und Java.
Platz in der iAS Architektur: Diverse Schnittstellen zu den Clients.
IIOP
HTTP
Oracle HTTP
Server
mod_ose
HTTP/Net8
Oracle8i JVM
EJB
Servlet
CORBA
JSP
Stored Procedures
Oracle8i JVM
 Web Container für
– Servlet 2.2 engine (Oracle Servlet Engine - OSE)
– JavaServer Pages 1.1 (OracleJSP)
 EJB 1.1 container
– Entity Bean Unterstützung
 Java CORBA Server Objects (Visibroker)
Oracle Portal
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Oracle Portal
Features
• Personalisierung
• Self Service Publishing
• Document Publishing
• integrierte Suchfunktion
• Single Sign On
• LDAP Integration
• Multi Language Support
• ...
Developer Kits
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Integrierte Produkte
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Oracle Wireless Services
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Oracle Wireless Services
Anbindung mobiler Endgeräte
WML
SMS
HDML
TTML
Transformers
Personalization
Portal
Adapters
Runtime
(User, Session
Management)
XML
Service
Manager
Oracle9i AS
Preferences
Oracle9i •• User
Device Information
Any Web
Site, DB,
Enterprise
App, e-mail
system
Oracle9i Wireless Edition
 Einfache Entwicklung und einfaches Deployment
von Applikationen für mobile Endgeräte
 Ein Portal für jeden Content und jedes Device
 Ein Portal für Wireless Messaging, Web Browsing
und E-Commerce
 Portale können von den Anwendern personalisiert
werden
Oracle9i Wireless Edition
Oracle9i AS
Wireless
Edition
Jedes Device Jedes Gateway Jedes Markup
Personalisiert
Jeder Content























Nokia
Motorola
Ericsson
Palm
RIM Pagers
Blackberry
Any Network
…..
Jeder Browser








Nokia
Motorola
Ericsson
Phone.com
CMG
Tantau
Infinity
...











HTML
XML
HDML
WML
TinyHTML
TTML
CHTML
STKML
VoXML
VoiceXML
….
Nach Anwendern
Nach Gruppen
Nach Devices
Nach Regionen
Nach Sprachen
...
Jede Web Site
Jede HTML Page
Jede XML Page
Jede Datenbank
Jedes servlet
Jedes JSP
Jedes XSP
Jede e-mail
...
Oracle9i Database Cache
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Oracle9i Database Cache
Funktion: Führt lesende SQL Abfragen auf zwischengespeicherten
Daten in der Middle Tier aus . Updates/Inserts werden automatisch
an das Backend weitergeleitet.
Implementation: Hauptsächlich C.
Platz in der iAS Architektur: Kann von Database Clients und
Programmcode innerhalb der Oracle8i JVM und Oracle8i PL/SQL
Engine aufgerufen werden.
OCI client
Net8
Oracle9i Cache
Oracle8i
SQL
SQL
Cached
data
Net8
Data
Oracle9i Database Cache
•
Beispiel: Website mit Katalogdaten
Katalogdaten
Ohne Datenbank Cache:
Statische Seiten werden
von der Middle Tier
geliefert. Alle Abfragen auf
Katalogdaten werden im
Backend (DB)
vorgenommen.
Mit Datenbank Cache:
Alle Abfragen auf
Katalogdaten werden
von der Middle Tier
bedient, die Last auf dem
Backend (DB) wird
reduziert . Durch
Verteilung der Daten auf
mehrere Middle Tier
Knoten wird die
Performance gesteigert.
Static
content
HTTP Server
Lesezugriffe
Schreibzugriffe
Katalogdaten
Static
content
HTTP Server Oracle9i Cache
Lesezugriffe
Schreibzugriffe
Oracle9i Database Cache
Management Console
Web Clients
Application + Application Server
OCI
Management Engine
Metadata Manager
SQL Route Analyzer
“hit”
Data Set Manager
Data Cache
(IPC)
“miss”
Oracle 8i
(TCP/IP)
Web Cache
Web
Acceleration
Services
Communication
Services
Oracle HTTP
Server
Presentation
Services
Business Logic
Services
Servlets/
JSPs
Java Stored
Procedures
Oracle
Wireless
Services
PERL
CORBA
Portal
BC4J
XML/XSL
PL/SQL
Forms, Reports
Oracle iFS
Oracle
EJBs
PL/SQL
Web
Cache
Data
Management
Services
Oracle
Database
Cache
non
Oracle
DB &
Messaging
Discoverer
Oracle Developer Kits
System Services
Enterprise Manager, Advanced Security, OID (client)
Enterprise
App
Web Cache
Web Cache
(pre-cached pages)
iAS
Any Data
iAS
iAS
Oracle8i
• Beschleunigt die Lieferung statischer und dynamisch
generierter Webseiten
• Load Balancing, Failover, Schutz vor
Auslastungsspitzen
• Content Awareness
Oracle9i Application Server
Skalierbarkeit
• Hardware: Verschiedene Plattformen - gleicher
Applikations Server und gleiche Datenbank
• Daten: DB Cache - Last von der Datenbank nehmen
• Applikationen: für stateless und statefull Applikationen
Windows
Windows
2000
Windows
2000
Or
NT
Cluster
Linux
Solaris
HP/UX
AIX
UNIX Cluster
Oracle9i Application Server
Lastverteilung & Ausfallsicherheit
 Über Threads und
Prozesse auf einem
Knoten
 Über mehrere
Knoten
Network
 HTTP Server,
loadbalancer
Apache JServ,
Oracle JVM
 Server Farmen
iAS
iAS
Oracle9i Application Server
www.oracle.com
Oracle Technology Network
technet.oracle.com
Oracle Certified Professional
technet.oracle.com/training
Oracle Support Services
technet.oracle.com/support
Compliance zu J2EE
•
Oracle9i AS
– JSP
1.1
– Servlets 2.2
– EJB
1.1
– JDK
1.2
– JNDI 1.2
– JDBC 2.0
– JMS
1.0
– XML
1.0
– RMI/IIOP 1.0
– CORBA
2.0
Fragen
Herunterladen