24 Tuning Application Server Performance

This chapter describes how to tune Oracle WebLogic Server for Oracle Identity Manager to improve performance in the following sections:


  • All tuning parameter suggestions and values in this section are for reference purposes only. Values should be modified based on your requirement, application usage patterns, loads, and hardware specifications.

  • Changing any of the settings may require you to restart the server.

See Also:

Oracle® WebLogic Server Performance and Tuning documentation for more information about tuning Oracle Application Server

24.1 JVM Memory Settings

To change the JVM memory setting:

  1. Open the DOMAIN_HOME/bin/setSOADomainEnv.sh or setSOADomainEnv.cmd file.

  2. Change the value of DEFAULT_MEM_ARGS and PORT_MEM_ARGS from the default value.

  3. Save the setSOADomainEnv.sh or setSOADomainEnv.cmd file.


Add the following option to prevent StringIndexOutOfBoundsException error:

This parameter is required only for Sun JDK.

24.2 JDBC Connection Pool

Oracle Identity Manager uses the oimOperationsDB and oimJMSStoreDS datasources deployed on Oracle WebLogic Server. By default, maximum connections is set at 50. You may have to increase this based on the requirement. To increase the capacity of the JDBC connection pools:

  1. Open the WebLogic Server Administration Console.

  2. For JDBC Datasource xlXADS:

    1. Click Services, JDBC, Data Sources, oimOperationsDB, and then click the Connection Pool tab.

    2. Adjust the Initial Capacity and Maximum Capacity based on requirement.

    For JDBC Datasource xlDS:

    1. Click Services, JDBC, Data Sources, oimJMSStoreDS, and then click the Connection Pool tab.

    2. Adjust the Initial Capacity and Maximum Capacity based on requirement.

  3. Save and activate the changes.


    Ensure that any increase in number of connections on the application server connection pools are compensated by database configuration changes. You might have to increase the MAX SESSIONS settings on Oracle Database.

24.3 Number of Message Driven Beans

Oracle Identity Manager uses Message Driven Beans (MDBs) for processing all offline activities, such as reconciliation, auditing, requests, attestation, and for its internal kernel operations. By default, total of 80 MDB instances concurrently serve requests. However, based on the requirement, this can be increased by modifying the OIMMDBWorkManager configuration. To do so:

  1. Login to WebLogic Administrative Console.

  2. Navigate to Environment, Work Managers, and then to MaxThreadsConstraint-1.

  3. Change the count from 80 to a higher number per your requirement.

24.4 User Interface Threads

By default, Oracle Identity Manager provides 20 front-end thread configurations. These threads are used for serving front-end requests. To change the number of front-end thread configurations:

  1. Login to WebLogic Administrative Console.

  2. Navigate to Environment, Work Managers, and then to MaxThreadsConstraint-0.

  3. Change the value of the count from 20 to number per your requirement.

24.5 Disable Reloading of Adapters and Plug-in Configuration

By default, reloading of adapters and plug-in configuration are enabled for ease of development. These should be disabled in the production environment. To do so:

  1. Export the /db/oim-config.xml file from MDS as described in "Exporting and Importing Configuration Files".

  2. In the oim-config.xml file, replace the following:

    <ADPClassLoaderConfig adapterReloadingEnabled="true" loadingStyle="ParentFirst" reloadInterval="15" reloadingEnabled="true">


    <ADPClassLoaderConfig adapterReloadingEnabled="false" loadingStyle="ParentFirst" reloadInterval="15" reloadingEnabled="false">
  3. Replace the following:

    <storeConfig reloadingEnabled="true" reloadingInterval="20"/>


    <storeConfig reloadingEnabled="false" reloadingInterval="20"/>
  4. Save the oim-config.xml file and import it back to MDS.

24.6 Changing the Number of Open File Descriptors for UNIX (Optional)

WebLogic limits the number of open file descriptors in the WEBLOGIC_HOME/common/bin/commEnv.sh script to 1024. In some cases, if there is a huge number of concurrent users, WebLogic may throw the "TOO MANY OPEN FILES" exception. If you face this error, then increase the limit beyond 1024 in the script. Ensure that the operating system is able to handle the increase in the number of open files.