Thursday, July 22, 2010

BPEL Performance – Tips & Tricks – 1

Dehydration Tuning

Dehydration tuning is required during CPU and Memory heavily utilized.

BPEL stores all the instances in the dehydration store during mid-point activities (onMessage, Receive, wait, onAlarm) also stores the instances during end of transaction.

1. auditLevel

Audit trial logging level is a domain level setup can be configured in BPEL console. Below settings controls the amount of audit events logged by a process. Audit trial is set to all types of processes.
  • off - absolutely no logging performed whatsoever; may result in a slight performance boost for processing instances.
  • minimal - all events are logged; however, no audit details are logged.
  • production - all events are logged. The audit details for assign activities are not logged; the details for all other nodes are logged.
  • development - all events are logged; all audit details for all activities are logged.
2. completionPersistPolicy

This setup can be done in both process and domain level. This configuration are done in Transient or short living processes. This setting will decide whether and when to save the instance.

This property controls if and when to persist instances. If an instance is not saved, it does not appear in Oracle BPEL Control. This property is applicable to transient BPEL processes.

This property is only used when inMemoryOptimization is set to true for transient bpel process.
This property has the following values:
  • on : (default): Completed instances are saved normally.
  • deferred : Completed instances are saved with a different thread and in another transaction. If a server fails, some instances may not be saved.
  • faulted : Only faulted instances are saved.
  • off : No instances (and their data) are saved.
3. completionPersistLevel

This property can be configured in both process and domain level. This configuration is done in transient or short living processes. This setting will control the amount of instance state saved to database.

This property is used only when the inMemoryOptimization performance property is set to true for transient bpel process. Use the completionPersistLevel property in conjunction with the completionPersistPolicy property.

This property has the following values:
  • all (default) : Oracle BPEL Server saves the complete instance, including the final variable values, work item data, and audit data. This setting causes the database to grow in size.
  • instanceHeader : The Oracle BPEL Process Manager saves only the instance metadata.
Process Level Dehydration Tuning

<BPELSuitcase>
<BPELProcess id="CreditRatingService“ src="CreditRatingService.bpel">
<partnerLinkBindings>
<partnerLinkBinding name="client">
<property name="wsdlLocation">CreditRating.wsdl</property>
</partnerLinkBinding>
</partnerLinkBindings>
<configurations>
<property name="inMemoryOptimization">true</property>
<property name="completionPersistPolicy">faulted</property>
<property name="completionPersistLevel">all</property>
</configurations>
</BPELProcess>
</BPELSuitcase>

1 comment:

  1. Thank you so much for taking the time for you personally to share such a nice info. I truly favor to reading your post

    __________________
    3 BHK Flats In Jaipur

    ReplyDelete