Oracle SOA 11g 11.1.1.6 Performance Tuning of BPEL Processes:BPEL Threading Model
When the dispatcher must schedule a dispatch message for execution, it
can enqueue the message into a thread pool. Each dispatch set can
contain a thread pool (java.util.concurrent.ThreadPoolExecutor). The
BPEL thread pool implementation notifies the threads when a message has
been enqueued and ensures the appropriate number of threads are
instantiated in the pool.
Dispatcher System Threads
The
dspSystemThreads
property
specifies the total number of threads allocated to process system
dispatcher messages. System dispatcher messages are general clean-up
tasks that are typically processed quickly by the server (for example,
releasing stateful message beans back to the pool).
Typically, only a small number of threads are required to handle
the number of system dispatch messages generated during run time.
The minimum number of threads for this thread pool is 1 and it cannot be set to 0 a or negative number.
The default value is
2
. Any value less than 1 thread is changed to the default.Dispatcher Invoke Threads
ThedspInvokeThreads
property
specifies the total number of threads allocated to process invocation
dispatcher messages. Invocation dispatcher messages are generated for
each payload received and are meant to instantiate a new instance.If the majority of requests processed by the engine are instance invocations (as opposed to instance callbacks), greater performance may be achieved by increasing the number of invocation threads. Higher thread counts may cause greater CPU utilization due to higher context switching costs.
The minimum number of threads for this thread pool is 1 and it cannot be set to 0 a or negative number.
The default value is 20 threads. Any value less than 1 thread is changed to the default.
Dispatcher Engine Threads
ThedspEngineThreads
property
specifies the total number of threads allocated to process engine
dispatcher messages. Engine dispatcher messages are generated whenever
an activity must be processed asynchronously. If the majority of
processes deployed are durable with a large number of dehydration points
(mid-process receive, onMessage, onAlarm, and wait activities), greater
performance may be achieved by increasing the number of engine threads.Note that higher thread counts can cause greater CPU utilization due to higher context switching costs.
The minimum number of threads for this thread pool is 1 and it cannot be set to 0 a or negative number.
The default value is 30 threads. Any value less than 1 thread is changed to the default.
Dispatcher Maximum Request Depth
ThedspMaxRequestDepth
property
sets the maximum number of in-memory activities to process within the
same request. After processing an activity request, Oracle BPEL Process
Manager attempts to process as many subsequent activities as possible
without jeopardizing the validity of the request. Once the activity
processing chain has reached this depth, the instance is dehydrated and
the next activity is performed in a separate transaction.If the request depth is too large, the total request time can exceed the application server transaction time out limit.This process is applicable to durable processes.
The default value is 600 activities.
your valuable information and time. Please keep updating
ReplyDeleteOracle Online Training
Oracle SOA Online Training Hyderabad