Web Applications   «Prev  Next»
Lesson 4 Using a Oracle Web Listener
ObjectiveDescribe the function of the Oracle Web Listener

Oracle Web Listener

Yes, the Oracle Web Listener still exists as an HTTP engine, but it is deprecated and will be desupported in a future Oracle Application Express release. Oracle recommends using Oracle REST Data Services instead.
The Oracle Web Listener is a lightweight HTTP server that can be used to host Oracle Application Express applications. It is based on the Apache HTTP Server and includes a number of Oracle-specific features, such as the mod_plsql module for serving PL/SQL applications.
Oracle REST Data Services is a more modern and feature-rich HTTP engine that is designed to support Oracle Application Express and other Oracle Fusion Middleware applications. It offers a number of advantages over the Oracle Web Listener, including:
  1. Improved performance and scalability
  2. Support for file system caching
  3. Improved file upload capability
  4. Certification with Oracle WebLogic Server, Oracle Glassfish Server, and Apache Tomcat

If you are using the Oracle Web Listener, it is recommended that you migrate to Oracle REST Data Services as soon as possible.

Second component of Web architecture is the Web Listener

The second component of Web architecture is the Web Listener. The Web Listener is an HTTP engine, similar to an Oracle background process, located on the Oracle host that manages incoming requests for services. Each host may have many listener processes running, depending on the processing needs of the Oracle WebServer.
The Slide Show below describes the role of the Web Listener.

Oracle Web Listener

The Web Listener receives incoming requests.
1) The Web Listener receives incoming requests.

The Web Listener submits incoming requests in the web request broker for processing.
2) The Web Listener submits incoming requests in the web request broker for processing.

The Oracle data is retrieved and the web request broker builds the HTML or JSP page.
3) The Oracle data is retrieved and the web request broker builds the HTML or JSP page.

Web Request Broker hands the page back to the web listener.
4) Web Request Broker hands the page back to the web listener.

The web listener then sends the completed HTML documents back to the originating requester.
5) The web listener then sends the completed HTML documents back to the originating requester.


  1. The Web Listener receives incoming requests
  2. The Web Listener submits incoming requests in the web request broker for processing.
  3. The Oracle data is retrieved and the web request broker builds the HTML or JSP page.
  4. Web Request Broker hands the page back to the web listener.
  5. The web listener then sends the completed HTML documents back to the originating requester.

Oracle Performance Tuning: A Comparative Evolution from Oracle 9i to Oracle 13c

Performance tuning is an indispensable activity in the domain of Oracle Database management, representing an ever-evolving set of methodologies, tools, and best practices. The tuning process has undergone a monumental transformation from Oracle 9i to Oracle 13c, accompanied by the advent of increasingly complex data workloads, cloud architecture, and machine learning algorithms. The core objective of ensuring optimal performance and resource utilization remains constant, but the strategies and tools to achieve this objective have matured significantly. Below is a detailed examination of how the Oracle performance tuning landscape has evolved over these versions.

Query Optimization

  1. Oracle 9i: In Oracle 9i, query optimization was largely rule-based or utilized the older Cost-Based Optimization (CBO) models. The DBA would often need to manually gather statistics and might even resort to query hints to influence the optimizer's behavior.
  2. Oracle 13c: Fast-forward to Oracle 13c, the optimizer has become more sophisticated, leveraging a feature called Adaptive Query Optimization. This feature allows the optimizer to make real-time decisions on executing SQL queries, and it can even re-optimize a query in the middle of execution if the initial assumptions do not hold true.

Indexing

  1. Oracle 9i: The role of indexes in Oracle 9i was somewhat limited to B-tree and bitmap indexes. The choice was often binary; B-tree for OLTP and Bitmap for OLAP.
  2. Oracle 13c: The concept of indexing has expanded greatly. Advanced indexing options such as function-based indexes, domain indexes, and invisible indexes offer better ways to optimize performance. Partitioned indexes are also now in play, allowing data to be logically segmented for better access speed.

Memory Management

  1. Oracle 9i: Oracle 9i primarily used manual memory management. The initialization parameters for the System Global Area (SGA) and Program Global Area (PGA) had to be set explicitly, requiring frequent tuning exercises.
  2. Oracle 13c: Oracle 13c introduced the Automatic Memory Management (AMM) and Automatic Shared Memory Management (ASMM), significantly reducing the overhead of manual memory allocation. These features adjust memory dynamically, minimizing the need for manual intervention.

Diagnostic and Tuning Tools

  1. Oracle 9i: Oracle 9i relied heavily on manual tools like Explain Plan, Tkprof, and Statspack for diagnostics. Performance tuning was more of an art, requiring a significant understanding of the underlying architecture.
  2. Oracle 13c: With Oracle 13c, tools like Oracle Automatic Workload Repository (AWR), Active Session History (ASH), and Oracle Real-Time SQL Monitoring provide more in-depth diagnostics and recommendations. These are part of the Oracle Diagnostic and Tuning packs, offering automated capture of database performance metrics and enhanced visualization.

Concurrency Control

  1. Oracle 9i: Oracle 9i employed basic concurrency control mechanisms, such as locks and latches. While these were efficient for their time, they required manual tuning for optimal performance.
  2. Oracle 13c: In Oracle 13c, more advanced features like the Result Cache, Materialized Views with Query Rewrite, and Optimistic Concurrency Control significantly improve data access and manipulation, reducing the need for frequent locking and latching.

Cloud Integration

  1. Oracle 9i: Oracle 9i predated the widespread adoption of cloud computing. Thus, performance tuning was strictly an on-premise affair.
  2. Oracle 13c: Oracle 13c allows seamless integration with Oracle Cloud, introducing cloud-specific performance tuning options. Features like Database as a Service (DBaaS) and multi-tenant architecture have added another layer of complexity and options for performance tuning.
The journey from Oracle 9i to Oracle 13c is a testament to Oracle's commitment to evolving its database technologies in tandem with the shifting paradigms of data management and cloud computing. Performance tuning, once a laborious manual effort, has become more intelligent, automated, and integrated, without compromising on the core objective of resource optimization and performance excellence.

Oracle Web Listener