You have several ways to look at what’s happening in a multi-threaded server environment. Using operating-system commands, you may be able to see a list of the dispatcher and shared server processes that are running at any given time. Listener Control commands can be used to display a list of dispatchers associated with any given listener, and that list also shows you the current number of connections supported by each dispatcher. Finally, as you might expect, there are a number of dynamic performance views that report MTS-related statistics.
On Unix and Linux systems, each dispatcher is a separate operating-system process. Likewise, each shared server is also an operating-system process. The exact naming convention seems to vary somewhat from platform to platform, but the dispatcher processes always have dxxx in their name, and the shared server processes always have sxxx in their name. In both cases, the xxx refers to a number that begins at 000, and that is incremented sequentially for each new dispatcher or shared server process that is started.
On most Unix and Linux systems, the
ps -ef command can be used to generate a
complete list of running processes. You can then search via
grep for the ones that interest you. The
following example shows one way to list all of the currently running
dispatcher and shared server processes for the instance named
ps -ef | grep ora_[ds]*_donnaoracle 697 1 0 ...