Click Next. Deploying an Agent in a Java EE Application Server Oracle WebLogic Server

4-20 Oracle Fusion Middleware Developers Guide for Oracle Data Integrator ■ Target : WLS Target into which this datasource will be deployed.

7. Click OK.

WLS Datasource Configuration and Usage When setting up datasources in WebLogic Server for Oracle Data Integrator, please note the following: ■ Datasources should be created with the Statement Cache Size parameter set to 0 in the Connection Pool configuration. Statement caching has a minor impact on data integration performances, and may lead to unexpected results such as data truncation with some JDBC drivers. ■ If using Connection Pooling with datasources, it is recommended to avoid ALTER SESSION statements in procedures and Knowledge Modules. If a connection requires ALTER SESSION statements, it is recommended to disable connection pooling in the related datasources, as an altered connection returns to the connection pool after usage.

4.3.3 Load Balancing Agents

Oracle Data Integrator allows to load balance parallel session execution between physical agents. Each physical agent is defined with: ■ A maximum number of sessions it can execute simultaneously from a work repository The maximum number of sessions is a value that must be set depending on the capabilities of the machine running the agent. It can be also set depending on the amount of processing power you want to give to the Oracle Data Integrator agent. ■ Optionally, a number of linked physical agents to which it can delegate sessions executions. An agents load is determined at a given time by the ratio Number of running sessions Maximum number of sessions for this agent.

4.3.3.1 Delegating Sessions

When a session is started on an agent with linked agents, Oracle Data Integrator determines which one of the linked agents is less loaded, and the session is delegated to this linked agent. An agent can be linked to itself, in order to execute some of the incoming sessions, instead of delegating them all to other agents. Note that an agent not linked to itself is only able to delegate sessions to its linked agents, and will never execute a session. Delegation cascades in the hierarchy of linked agents. If agent A has agent B1 and B2 linked to it, and agent B1 has agent C1 linked to it, then sessions started on agent A Note: This operation only creates the Datasources definition in WebLogic Server. It does not install drivers or library files needed for these datasources to work. Additional drivers added to the Studio classpath can be included into a WLS Agent Template. See Section 4.3.2.1.2, Create an WLS template for the Java EE Agent for more information. Setting-up the Topology 4-21 will be executed by agent B2 or agent C1. Note that it is not recommended to make loops in agents links. If the user parameter Use new Load Balancing is set to Yes, sessions are also re-balanced each time a session finishes. This means that if an agent runs out of sessions, it will possibly be reallocated sessions already allocated to another agent.

4.3.3.2 Agent Unavailable

When for a given agent the number of running sessions reaches its maximum number of sessions, the agent will put incoming sessions in a queued status until the number of running sessions falls below the maximum of sessions. If an agent is unavailable because it crashed for example, all its sessions in queue will be re-assigned to another load balanced agent that is neither running any session nor having sessions in queue if the user parameter Use the new load balancing is set to Yes. See Appendix B, User Parameters for more information.

4.3.3.3 Setting Up Load Balancing

To setup load balancing: 1. Define a set of physical agents, and link them in a hierarchy of agents See Creating a Physical Agent for more information. 2. Start all the physical agents corresponding to the agents defined in the topology. 3. Run the executions on the root agent of your hierarchy. Oracle Data Integrator will balance the load of the executions between its linked agents.