PAS for OpenEdge tuning recommendations
- Last Updated: February 11, 2026
- 3 minute read
- OpenEdge
- Version 13.0
- Documentation
Before you read a detailed account of PAS for OpenEdge tuning in the following topics, know that there are a few parameters that you can tune to affect the performance of your application immediately. If the parameters are set correctly, then they could improve the performance of your application in production.
The following figure shows a configuration in which neither the server nor ABL application agents throttle connections to the database because the PAS for OpenEdge instance and ABL applications were tuned:

- Can run 200 concurrent client requests to a single stateless/state-free ABL application.
- Includes a hot standby, multi-session agent that enhances application availability. A hot standby is a redundant method in which one system runs simultaneously with an identical primary system.
This configuration can be mimicked in your environment or altered based on your needs. This example configuration does not show how to load balance multiple instances or applications. This topic explains how to tune a single instance, to get the best performance. Scaling and sizing considerations are discussed in the Scaling considerations in PAS for OpenEdge and Load balance PAS for OpenEdge instances.
Server-side tuning recommendations
To set a server configuration that can deliver the best application performance, change these parameters:
| Server configuration properties | Description |
|---|---|
psc.as.executor.maxthreads=200 |
The maximum number of client requests ( request execution threads) that can be executed by the server before they are placed in a wait queue. The maximum applies to all deployed Java or ABL applications. |
|
The maximum number of client requests that can be queued, waiting for a request execution thread. |
The server configuration properties can be set using the PASMAN config command. For more information, see
Use
PASMAN to configure an instance.
The sum of the properties (maxthreads and
maxqueuesize) plus the size of the client
request data affects the total process memory size of the PAS for OpenEdge
instance process.
The psc.as.executor.maxthreads configuration
property determines the limit for how many concurrent client requests the PAS
for OpenEdge instance can execute. Because each client request executes in one
of these threads, the value must be as large or larger than the total number of
client requests by all deployed Java or ABL applications. PAS for OpenEdge,
which runs an embedded version of Tomcat, does not load balance client requests
by deployed application. Therefore, if the thread size is not large enough, you
may find that client requests to random applications are queued and pause the
application. The number of queued threads is set with the psc.as.http.maxqueuesize or psc.as.https.maxqueuesize configuration property. For more
information about tuning the server configuration, see PAS for
OpenEdge server-side tuning.
ABL web application tuning tips
To set an ABL web application configuration that can deliver the best application performance, change these parameters:
| ABL application configuration | Description |
|---|---|
numInitialAgents=2 |
Starts two multi-session agent OS processes: one handles all client requests and one remains idle in hot-standby mode. |
|
Maintains two running multi-session agent processes at all times; if one agent stops, then a second is automatically started. |
maxConnectionsPerAgent=200 |
Sets the maximum number of concurrent client requests handed by the
PAS for OpenEdge server (set equal to psc.as.executor.maxthreads). |
maxABLSessionsPerAgent=200 |
Sets the maximum number of ABL sessions handled by each multi-session
agent (set equal to the maxConnectionsPerAgent in stateless/state-free ABL
application architectures). |
|
This configuration runs the maximum client request load (maxConnectionsPerAgent) of 200 using one agent OS
process. The second agent OS process stays in standby mode until the first agent
OS process is stopped by the system administrator directive or the process
fails. You do not have to manually create a second agent OS process if one
terminates because PAS for OpenEdge automatically creates the second
process.
The sample ABL web application configuration assumes that after load testing, a single agent OS process can run 200 client requests concurrently without exceeding the OS process, CPU, memory, or I/O limits. For more information about tuning ABL application configurations, see Tune OpenEdge web applications and multi-session agents.
For information about machine sizing and to download a sample application that can be used for testing the tuning properties and size of the PAS for OpenEdge instance, see the PAS for OpenEdge ATM Benchmark Test and Machine Sizing Guide on Progress Community.