Monday, 9 October 2017

Oracle SOA Adapter Tuning Properties


DB Adapter


  1. Distributed Polling - While creating DB adapter to poll the records from DB, select Distributed Polling under polling configuration. This property will  automatically uses the syntax SELECT FOR UPDATE SKIP LOCKED that means the same row cannot be processed multiple times.                                                                                                                           
  2. Singleton Process:  In case of distributed polling (Cluster having multiple Servers) , all the managed servers try to poll and process the records from the DB.  This will have a performance issue.  The JCA Binding Component supports active fail over of inbound Adapter Services. To enable this fail over feature for a given inbound adapter endpoint, we must add the singleton JCA service binding property in the composite.xml within the <binding.jca> element and set it to a value of true. 

                <binding.jca config="SchedulerPollDBAdapter_db.jca">
                <property name="singleton">true</property>
                </binding.jca>

          The above property will make  one node of the cluster will poll for the record. If the active node goes down then other  node of the cluster will become active node and start  polling for the record.

    Above Singleton property can be used for all types of adapters. 

    File/FTP Adapter

    Use following connection factory for polling the files in distributed configuration

    <connection-factory location="eis/HAFileAdapter" adapterRef=""/>

    Configure a database table as a coordinator by modifying Oracle File and FTP Adapter deployment descriptor for the connection-instance corresponding to  eis/HAFileAdapter from the Administration Console:


    1. controlDir - Set this parameter to the directory structure where you want the control files to be stored. Set it to a shared location if multiple Oracle WebLogic Server instances are running in a cluster.
    2. inboundDataSource - Set this parameter to jdbc/SOADataSource. This is the data source where the schemas corresponding to high availability are pre-created. The pre-created schemas are located under MW_HOME/ASreleaseSOA/rcu/integration/soainfra/sql/adapter/createschema_adapter_oracle.sql. To create the schemas elsewhere, use this script. Set the inboundDataSource property accordingly if you choose a different schema.
    3. outboundDataSource - Set this parameter to jdbc/SOADataSource. This is the data source where the schemas corresponding to high availability are pre-created. See inboundDataSource for schema location.
    4. outboundLockTypeForWrite - Set this parameter to oracle if you are using Oracle database. By default Oracle File and FTP Adapters use an in-memory mutex to lock outbound write operations. Choose one of the following values for synchronizing write operations:
    5. memory - Oracle File and FTP Adapters use an in-memory mutex to synchronize access to the file system.


    • oracle - The adapter uses Oracle database sequence.
    • db - The adapter uses a pre-created database table (FILEADAPTER_MUTEX) as the locking mechanism. Use this option only if you are using a schema other than the Oracle database schema
    • user-defined - The adapter uses a user-defined mutex. In order to configure the user-defined mutex, implement the mutex interface:  oracle.tip.adapter.file.Mutex and then configure a new binding-property with the name oracle.tip.adapter.file.mutex and value as the fully qualified class name for the mutex for the outbound reference.

    No comments:

    Post a Comment