Quote:
Is there a reason why these processes
would stick around after the application server is down. |
Short answer: Yes.
Long answer: db2fmp processes are fenced mode processes, which are created by
fenced UDFs or fenced stored procedures. If keepfenced (in previous versions
keepdari) is set to yes in the database manager configuration, those processes
will not be terminated after the UDF or stored procedure is terminated.
The number of open db2fmp processes is controlled by the fenced_pool dbm cfg
parameter. You can either change the value of fenced_pool to a lower value or
you can change keepfenced to no.
Those processes will be there until you shutdown the instance. They won't be
terminated by disconnecting all applications from the database.
The same is true for the db2agent processes, which are the processes handling
the db2 connections. The parameter you want to check out is num_poolagents.
In both cases, I would not set those values too small. You have to take into
consideration that creating processes takes time and if you have a lot of
applications connecting/disconnecting to/from the database, it can become a
performance issue.
You will have to find the right balance between resources and performance
depending on your environment.
Despite all the information above I have to say that 500 as a process limit
for an instance user is way too low. I have never seen a production
environment that uses any other value than unlimited. (What happens, if you
use more than one database within an instance or if you have more than 500
applications connected to the database/s - although you will get errors even
before 500 connections since you are using fenced UDFs and/or SPs.)
--
Helmut K. C. Tessarek
DB2 Performance and Development
/*
Thou shalt not follow the NULL pointer for chaos and madness
await thee at its end.
*/