Overview of 11i E-Business Suite
Multi-tiered distributed computing- various servers distributed among multiple levels, or tiers.
Server: A process or a group of processes that run on a single machine and provide a particular functionality.
Tier: A logical grouping of services, spread across more than one physical machine.
- Database Tier: Supports and manages Oracle database.
- Application Tier: Manages various application components.
- Desktop Tier: Provides user interface via add-on components to a standard web browser e.g. JInitiator or a Java Applet.
- Nodes work closely together in a cluster. Each tier may consists of one or more nodes and each node can potentially accomdate more than one tier. This may be done for simplicity of administration or to maximise performance by reducing network traffic.
Form-based Desktop Tier:
- Single point of access.
- Forms client applet + Oracle JInitiator.
- Forms Client Applet: Presentation applet that supports all form-based products. It is a collection of JAR files, contains all Java classes required to run the presentation layer of Oracle Application Forms.
- Oracle JInitiator: Forms Client Applet must run within JVM or Desktop client. Instead of using browser's JVM, JInitiator component allows use of Oracle JVM. JInitiator is used as a ActiveX component on Windows machine.
- JInitiator is only invoked when a user choose access functions that require it, e.g. running a form.
- Form Client Applet and commonly used JAR files are downloaded from the web server at the beginning of client's first session. Less commonly JAR files are downloaded as needed. Downloaded JAR files are locally cached for future sessions which eliminates network traffic.
- All updates to JAR files are installed on Application tier and downloaded to the client automatically.
- Select "Show Console" on "Basic" JInitiator tab, to see downloading of JAR files.
- Manage communication between desktop tier and database server.
- Hosts various servers that process the business logic.
- Oracle 9iAS provides technology used on the application tier, Six servers comprises the application tier for Oracle Applications-
1. Web Server
2. Forms Server
3. Reports Server
4. Discoverer Server ( optional)
5. Concurrent Processing Server
6. Admin Server
Load Balancing: Application tier supports load balancing among many of its servers.
- Load Balancing provides higher availability, fault tolerance, reliablity and optimum scalability.
- Load Balancing is typically used to spread the load accross multiple web servers where load may vary significantly.
Web Server: Oracle HTTP Server (Appache), additional components are-
- Web Listener
- Java Servlet Engine
- Java Server Page (JSP)
- Web Listener accepts HTTP requests for particular URLs.
- If possible, web server services the request itself, if page referenced by the URL needs advanced processing, Listener passes the request to servlet engine which contacts database server as needed.
Self-Service Applications ( HTML- Based):
- Do not use Oracle Forms for interface.
- Dynamically generates HTML by executing Java code.
- Use Metadata dictionary for flexible layout.
- OAF(Oracle Application Framework) is development plateform for HTML-based applications.
Components of OAF are-
1. BC4J(Business Component for Java): BC4J is included in Oracle JDeveloper and used to create Java business components for representing business logic. Also provides mechanism for mapping relational tables to Java objects and allows separation of application business logic from user interface.
2. AOL/J: Supplies the security and provides OAF with its connection to database server and with application specific functionality e.g. Flexfields.
Java Servlet access with HTML based application-
1. User clicks a hyperlink of a function from browser.
2. Browser makes URL request to web listener.
3. Web Listener contacts JServ where it runs a JSP.
4. JSP obtains contents from application tables (through using MataData dictionary) to construct the HTML page.
5. Resulting HTML page is passed back to browser.
- Oracle Application forms and associated run-time engine is hosted at form server.
- Mediates communication between desktop client and database server.
- Form server caches data and provides it to the client as needed.
- 3 protocols used by Form server-
1. Standard HTTP
2. Secure HTTPS
* Form server communicate with database server using Oracle Net
- Automatic load balancing among multiple form servers
- Metric server act as a single point of co-ordination for all form server requests.
- Metric is located on one application server. Metric clients, located on other application servers
periodically send load information to metric server.
- Web Listener contacts the report server through reports Web CGI which allows the user to run reports and see output.
- Master Report server receives initial request and distribute it to one of the other report servers, depending upon the load each can handle.
- An ad-hoc query, reporting analysis and publishing tool that allows user to gain immediate access to information from data marts, data warehouses and OLTP systems.
- Report builders and analysts can easily create, modify and execute ad-hoc queries and reports.
- Casual users can navigate through pre-defined reports and graphs via business views that hide complexity of underlying structures.
- Discoverer hides the complexity of database, presenting it through an intuitive, easy-to-understand interface.
- It complements the report server, allows user to perform projections based on possible changes.
Discoverer End User Layer:
- Key to provide ease of use to underlying data in Oracle Applications' database. It is a layer of metadata located in application database, separated from actual Applications' data.
- 3 components to access the End User Layer-
1. Discoverer Administrator Edition
2. Discoverer Plus
3. Discoverer Viewer
Concurrent Processing Server:
- Feature that allows non-interactive and potentially long runnig functions to be executed effeciently alongside interactive operations.
- To ensure that resource intensive concurrent processing operations do not interface with interactive operations, they can run on a specialised concurrent processing server.
- When a concurrent request is submitted, a row is inserted into a database table specifying the program to be run. A concurrent manager then reads requests from this table and starts associated concurrent program.
- Acts as a job scheduling and execution system.
- It is itself an executable registered as a program and