Oracle Application Server (latest version 10g) also called OAS 10g is a very huge box. OAS is gathering various products: Oracle Portals, Oracle Reports, Oracle Forms,…. all of these running with the “kernel” of OAS: the OC4J container which belongs to the Application Server 10g instances. It is the main component of OAS. Using it, we got a Three-tier model architecture.
Three-tier is a client-server architecture in which the user interface, functional process logic (“business rules”), data storage and data access are completely independent. There are developed and maintained as independent objects. A fundamental rule in a three tier architecture is that the Client tier never communicates directly with the Data tier; in a three-tier or three-layer model all communications go through the second-tier: the Middleware tier.
The different layers in an Oracle application server 10g architecture:
> Client tier
Contains the web browsers for end users> OAS tier
Contains the OAS (especially the OC4 container), the OHS (Oracle HTTP server) and the webcache (optional) (and sometimes other modules)> Database tier
Contains the Database (Oracle one or another one)
Considering different aspects: business impacts, criticism, number of users…. and depending on “how much you have for your server architecture”, the Oracle application server 10g architecture can be considered as a Four-tier model.
If you firm was big enough, the OAS tier would be divided into two parts, and you would get this kind of architecture:
> Client tier
Contains the web browsers for end users> OHS tier
the OHS (Oracle HTTP server) and the webcache (optional)> OAS tier (or app. server tier)
Contains the OAS (especially the OC4 container) and the other OAS modules> Database tier
Contains the Database (Oracle one or another one)
Why doing that ?
For security, flexibility, reliability… usually you don’t have only one server for each tier. At least you would have two servers for each tier. Therefore you can easily maintain the servers, you can shutdown one OHS and the application will still be available – of course it would mean that you have got a load-balancer, in front of the OHS
You can have a very scalable architecture depending on your needs and the evolution of your activities during the year.
OAS 10g is not a simple J2EE application server, it is full of optional modules/components, such as:
Middle tier:
J2EE & web services:
Oracle HTTP Server
Oracle AS Containers for J2EE(OC4J)
Oracle AS toplink
Oracle Business Components for Java (BC4J)
Oracle AS web services
Oracle XML developer Kit
Oracle PL/SQL
Oracle AS Map/viewer
Datamining:
Oracle Reports Server
A component which helps a lot for reports or spreadsheets filled with oracle database data.Oracle Forms Server
format, and render end-user presentation pages, based on data in an Oracle Database.Oracle Discoverer
Oracle Personalization
personalised webspace (url history customize data content)
Portal:
Oracle Portal
A component to create content-based web site.Oracle Portal Developer Kit
Wireless:
Oracle AS wireless
Web Cache:
Oracle AS web Cache‘interconnection’:
Oracle AS InterConnect
Oracle As ProcessConnect
Infrastructure:
Oracle Internet Directory (OID)
It is the oracle LDAP, to store all the user informationSingle Sign-On (SSO)
authentication modules for all the oracle modules and many others which can base their system on it.Oracle Certificate Authority
Metadata repository (or Infrastructure)
It stores Application Server 10g metadata and it manages multiple oracle components through a unique interface