4.8.1 MAXDISPATCHTHREADS
The MAXDISPATCHTHREADS
parameter determines the
maximum number of concurrently dispatched threads that each server
process can spawn. When specifying this parameter, consider the
following:
- The value for
MAXDISPATCHTHREADS
determines the maximum size that the thread pool can grow to be, as it increases in size to accommodate incoming requests. - The default value for
MAXDISPATCHTHREADS
is 1. If you specify a value greater than 1, the system creates and uses a special dispatcher thread. This dispatcher thread is not included in the number of threads determining the maximum size of the thread pool. - Specifying a value of 1 for the
MAXDISPATCHTHREADS
parameter indicates that the server application must be configured as a single-threaded server. A value greater than 1 indicates that the server application must be configured as a multithreaded server. - The value you specify for the
MAXDISPATCHTHREADS
parameter must not be less than the value you specify for theMINDISPATCHTHREADS
parameter. - The operating system resources limit the maximum number of
threads that can be created in a process.
MAXDISPATCHTHREADS
must be less than that limit, minus the number of application managed threads that your application requires.
The value of the MAXDISPATCHTHREADS
parameter
affects other parameters. For example, the
MAXACCESSORS
parameter controls the number of
simultaneous accesses to the Oracle Tuxedo system, and each thread
counts as one accessor. For a multithreaded server application, you
must account for the number of system-managed threads that each
server is configured to run. A system-managed thread is a thread
that is started and managed by the Oracle Tuxedo software, as
opposed to threads started and managed by an application.
Internally, Oracle Tuxedo manages a pool of available
system-managed threads. When a client request is received, an
available system-managed thread from the thread pool is scheduled
to execute the request. When the request is completed, the
system-managed thread is returned to the pool of available
threads.
For example, if that you have 4 multithreaded servers in your system and each server is configured to run 50 system-managed threads, the accessor requirement for these servers is the sum total of the accessors, calculated as follows:
50 + 50 + 50 + 50 = 200 accessors
Parent topic: Enhancing Efficiency with Application Parameters