This parameter specifies the maximum number of concurrent applications that can be connected (both local and remote) to a database. Since each application that attaches to a database causes some private memory to be allocated, allowing a larger number of concurrent applications will potentially use more memory.
The value of this parameter must be equal to or greater than the sum of the connected applications, plus the number of these same applications that may be concurrently in the process of completing a two-phase commit or rollback. Then add to this sum the anticipated number of indoubt transactions that might exist at any one time.
When an application attempts to connect to a database, but maxappls has already been reached, an error is returned to the application indicating that the maximum number of applications have been connected to the database.
In a partitioned database environment, this is the maximum number of applications that can be concurrently active against a database partition. This parameter limits the number of active applications against the database partition on a database partition server, regardless of whether the server is the coordinator node for the application or not. The catalog node in a partitioned database environment requires a higher value for maxappls than is the case for other types of environments because, in the partitioned database environment, every application requires a connection to the catalog node.
Recommendation: Increasing the value of this parameter without lowering the maxlocks parameter or increasing the locklist parameter could cause you to reach the database limit on locks (locklist) rather than the application limit and as a result cause pervasive lock escalation problems.
To a certain extent, the maximum number of applications is also governed by maxagents. An application can only connect to the database, if there is an available connection (maxappls) as well as an available agent (maxagents). In addition, the maximum number of applications is also controlled by the max_coordagents configuration parameter, because no new applications (that is, coordinator agents) can be started if max_coordagents has been reached.