Oracle AS B2B - Performance Best Practices
By Ramesh Nittur Anantharamaiah on Aug 08, 2008
I am sharing some of the Best practices for Oracle AS B2B Performance. Please feel free to add and make it helpful for the B2B community.
1. Index TIP_WIREMESSAGE_RT table on column B2BWIREMESSAGEID
2. set oracle.tip.adapter.b2b.sleepTimeout=1 in tip.properties (default value 10)
3. use multiple worker IP listener threads in B2B and make sure to do appropriate testing as it is most suited for multiple processor. This is done by setting oracle.tip.adapter.b2b.NumOfIPListeners to appropriate values. However this is not a well tested feature.
4. Use custom queues for processing outbound messages instead of IP_OUT_QUEUE. If you have more load, create multiple queues and load balance among them. For e.g for every 2 messages/sec create an additional queue.
5. oracle.tip.adapter.b2b.defaultIdcOn=false. This turns off the message retrieval from default delivery channel, in case of custom queues as in step 4.
6. change the Log level from DEBUG to ERROR in tip.properties.
7. Batching messages for outbound . This is only for EDI messages.
8. Index B2B_CTLNUM_IN, B2B_CTLNUM_OUT for better EDI throughput.
9. Index INTERCHANGECONTROLNUMBER,GROUPCONTROLNUMBER,TXNSETCONTROLNUMBER column in TIP_BUSINESSMESSAGE_RT table.
10.Set the following variables in opmn.xml
11. Set the following JVM parameters in opmn.xml
12. Configuring the Row Fetch size
13. Set aq_tm_process = 10 and restart Database.
14. Use TPACache. http://www.b2bgurus.com/2008/08/tpa-caching.html
15. Set oracle.tip.adapter.b2b.receiveTimeout=1