Application Module Pooling
An application module pool is a collection of application module instances of the same type, such as an Orders application module or a Human Resources application module. This pool of application module instances is shared by multiple browser clients. The amount of time between submitting Web pages enables a smaller number of application module components to serve a larger number of active users. This reduces memory usage and improves performance.
At any one time, the pool may contain application module instances that are partitioned into three groups, based on their state. When the processing of a current HTTP request completes, the application module instance is checked back into the pool. If the AM instance has managed state, the pool keeps track that the AM is referenced by that particular session.
An application module instance in the pool may be:
Unconditionally available for use
Available, but referenced for preferred reuse by a certain active session because that would be more efficient due to the managed state of the application module
Unavailable because it is being used at that very moment by a Web container thread
You can configure application module pool behavior, sizing, and cleanup behavior. For more information about this, refer to the Fusion Developer’s Guide for ADF in online Help.
Note: Pools are created only for root application modules, not for nested ones that users access indirectly through a root application module.