16 Tuning Oracle Mediator

You can tune Oracle Mediator to optimize its performance as the framework for mediation between various providers and consumers of services and events.

About Oracle Mediator

Mediator is a component of the Oracle SOA Suite offering that provides mediation capabilities like selective routing, transformation and validation capabilities, along with various message exchange patterns, like synchronous, asynchronous and event publishing or subscription.

Oracle Mediator provides the framework to mediate between various providers and consumers of services and events. The Mediator service engine runs with the SOA Service Infrastructure Java EE application.

Note:

For details about the SOA Suite, see Developing SOA Applications with Oracle SOA Suite.

For details about Oracle Mediator, see Administering Oracle Mediator Service Components and Engines in Administering Oracle SOA Suite and Oracle Business Process Management Suite.

Tuning Mediator Parameters

You can tune the Oracle Mediator properties to improve performance if necessary.

In most business environments, customer data resides in disparate sources including business partners, legacy applications, enterprise applications, databases, and custom applications. The challenge of integrating this data efficiently can be met by using Oracle Mediator to deliver real-time data access to all applications that update or have a common interest in the same data.

Note:

Before you begin tuning Oracle Mediator properties, be sure that you have read and understand the Oracle Mediator topics under Administering Oracle Mediator Service Components and Engines in Administering Oracle SOA Suite and Oracle Business Process Management Suite.

Table 16-1 describes the parameter values that can be tuned for performance. Note that the need to tune Mediator to improve performance is unlikely.

Table 16-1 Essential Mediator Tuning Knobs

Parameter Tuning Recommendation

DeferredMaxRowsRetrieved

Default: 20 rows

Increase the default value to retrieve more deferred processing messages from the DB in one iteration.

Note that in Mediator, this parameter is only used with parallel routing rules.

DeferredLockerThreadSleep

Default: 2 seconds

If deferred messages constitute a small percentage of total messages, increase the default value to perform fewer trips to the DB to retrieve deferred messages.

Some use case scenarios can benefit from an idle time of 3600 seconds (60 minutes).

metricsLevel

Default: enabled

If you do not need to collect DMS metrics data, disabling this parameter can improve performance.

For more information about each parameter, see Configuring Oracle Mediator Service Components and Engines in Administering Oracle SOA Suite and Oracle Business Process Management Suite.

Using Resequencer for Messages

A Resequencer is used to rearrange a stream of related but out-of-sequence messages back into order.

It sequences the incoming messages that arrive in a random order and then sends them to the target services in an orderly manner.

Table 16-2 lists the tunable parameters for Resequencer in Mediator. You can tune the following parameters by accessing the Mediator Service Engine Properties page or the System MBean Browser by using one of the methods described under Configuring Oracle Mediator Service Engine Properties in Administering Oracle SOA Suite and Oracle Business Process Management Suite.

Table 16-2 Essential Tuning Knobs for Resequencer in Mediator

Parameter Tuning Recommendation

ResequencerMaxGroupsLocked

Default: 4 rows

Increase the default value to lock more Resequencer groups from the database in one iteration.

ResequencerLockerThreadSleep

Default: 10 seconds

If resequencer groups constitute a small percentage of total groups and messages, increase the default value to perform fewer trips to the database to lock resequencer groups.

DeleteMessageAfterComplete

Default: True

Set the value to True to delete message after successful execution. For a high load use case, this results in more database space.

Changing the default value to False retains the resequenced messages in the resequencer database. This slows down the resequencer database queries, which in turn degrades the performance.

See Configuring Resequenced Messages in Administering Oracle SOA Suite and Oracle Business Process Management Suite.