11 General Tuning for SOA Suite Components

This chapter describes tuning configurations that can apply to multiple SOA Suite applications.

For more information on any of the SOA Suite Applications, see Section 10.4.1, "SOA Suite Components" for a list of the application-specific documentation provided in this guide.


Additional SOA tuning recommendations can be found in "Managing Large Documents and Large Number of Instances" in the Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.

11.1 About SOA Suite Configuration Properties

Refer to the Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite for more information on configuring the SOA Applications.

11.2 SOA Infrastructure Configurations

SOA Infrastructure configuration parameters impact the entire SOA Infrastructure. The following configurations are modified through the SOA-INFRA component:

  • Viewing and setting the SOA Infrastructure audit level

  • Capturing the state of the SOA composite application instance

  • Enabling the payload validation of incoming messages

  • Specifying the callback server and server URLs

  • Setting UDDI registry properties

  • Viewing the data source JNDI locations

  • Setting the non-fatal connection retry count

  • Setting Web service binding properties

For more information on SOA configuration, see "Configuring SOA Infrastructure Properties" in Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.

11.2.1 Audit Level

The Audit Level property enables you to select the level of information to be collected by the message tracking infrastructure. This information is collected in the instance data store (database) associated with the SOA Infrastructure. This setting has no impact on what is written to log files.

Value Description


No composite instance tracking and payload tracking information is collected. No logging is performed. Note that no logging and display of instances in Oracle Enterprise Manager Fusion Middleware Control Console can result in a slight performance increase for processing instances. Instances are created, but are not displayed.


Composite instance tracking is collected, but the Oracle Mediator service engine does not collect payload details and the process service engine does not collect payload details for assign activities (payload details for other activities are collected). This level is optimal for most normal production operations.


Enables both composite instance tracking and payload detail tracking. However, this setting may impact performance. This level is useful largely for testing and debugging purposes.

11.2.2 Capture Composite Instance State

This option provides for separate tracking of the running instances. All instances are captured as either running or not running. This information appears later in the State column of the composite instances tables for the SOA Infrastructure and SOA composite application, where:

  • It shows the counts of running instances versus total instances

  • You can also limit the view to running instances only

Valid states are running, completed, faulted, recovery needed, stale, terminated, and state not available. The running and completed states are captured only if this checkbox is selected. Otherwise, the state is set to unknown. The conditional capturing of these states is done mainly to reduce the performance overhead on SOA Infrastructure runtime.

Enabling this option may result in additional runtime overhead during instance processing. Note, however, that if this property is disabled and you create a new instance of a SOA composite application, a new instance is created. However, the instance does not display as running, faulted, stale, terminated, completed, or requiring recovery in the Dashboard page table of the composite application. This is because capturing the composite state of instances is a performance-intensive process.

11.2.3 Instance Tracking Audit Trail Threshold

This parameter is used to limit the audit trail size while it is being built. The default value is 1MB. If the audit trail exceeds the instanceTrackingAuditTrailThreshold size (1MB by default), then an exception is thrown, and the audit trail is not fully built. The value is in Bytes, so the default value is 1024*1024. This parameter can improve performance, as it prevents huge audit trails to potentially consume a lot or all the memory available on the SOA server where the audit trail is built. So in many way it acts as a safety valve. However in some cases users might want to increase the default value, if they get an exception while retrieving audit trails from Enterprise Manager, that states the " instanceTrackingAuditTrailThreshold" has been exceeded.

11.2.4 Logging Level

For more information on setting the logging levels for your applications, see "Configuring Log Files" in Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.

11.3 Modifying SOA Configuration Parameters

SOA soa-infra level configurations can be set through Oracle Enterprise Manager.

For more information, see "Getting Started with Administering Oracle SOA Suite and Oracle BPM Suite" in the Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.

11.4 JVM Tuning Parameters

JVM parameters can have an impact on SOA performance. The major factors that impact a SOA component's performance relate to the heap size. For more information on tuning the JVM for performance, see Section 2.4, "Tuning Java Virtual Machines (JVMs)".

11.5 Database Settings

Tuning your database configurations may be useful with the SOA Suite of applications. Configurations and specific settings may vary for different use cases. See your database-specific administration manuals for more information on tuning database properties.

For additional basic database tuning guidelines, see Section 2.6, "Tuning Database Parameters".

11.5.1 Configuring Data Sources for SOA

SOA obtains database connections using an application server managed data source. You can use the WebLogic Server Console to configure SOA data source. For more information on using the WebLogic Server Console, seethe Oracle Fusion Middleware Administrator's Guide.

Consider the following data source configurations when performance is an issue:

  • When configuring the data source, ensure that the connection pool has enough free connections.

  • Statement caching can eliminate potential performance impacts caused by repeated cursor creation and repeated statement parsing and creation. Statement caching also reduces the performance impact of communication between the application server and the database server

  • Disable unnecessary connection testing and profiling.

For more information, see "Tuning JDBC Stores" in Oracle Fusion Middleware Performance and Tuning for Oracle WebLogic Server.

11.5.2 Managing Tables and Indexes

Consider using hash partitioning on your tables and indexes if your data does not easily lend itself to range partitioning, but you would like to partition for performance and manageability reasons. Hash partitioning provides a method of evenly distributing data across a specified number of partitions. Rows are mapped into partitions based on a hash value of the partitioning key. Creating and using hash partitions gives you a highly tunable method of data placement, because you can influence availability and performance by spreading these evenly sized partitions across I/O devices (striping).


Do not use partitioning on any date-based index that is likely to be used in range queries by Enterprise Manager or SOA. Partitioning date-based indexes, such as STATE_TYPE_DATE and COMPOSITE_INSTANCE_CREATED, for example, could siginificantly impact perforamance.

To improve performance, consider using hash partitioning on the following tables and indexes. Note that the performance improvement of each partitioning will vary considerably depending on the type of composite.

Partitioned Table Name Partition Type Number


Hash partitioning of AC_PK index

Not Applicable


Partitioned and Reverse key index CI_CREATION_DATE

Not Applicable


Partition by hash (CIKEY)

Partitions = 200


Partition by hash ("ID")

Partitions = 200


Partition by hash (document_id)

Partitions = 200

Hash Partitioned Indexes



















11.5.3 Weblogic Server Performance Tuning

For complete performance tuning of Weblogic Server, refer to Oracle Fusion Middleware Performance and Tuning for Oracle WebLogic Server.