Client/Server Parameters (S)

Client/Server Parameters (S)

This option automatically generates $PROTOP/rpt/ .servers.rpt and displays it in the ProTop File Viewer. The report displays global and broker-specific parameters for client/server brokers.

See the ProTop File Viewer page for instructions on how to navigate in the file viewer or hit '?' to bring up a help panel. 'x' or 'q' will exit the report display and return you to the previous screen.

Common Parameters

Parameter Description
-n Maximum Number of database connections
-pollset Use the pollset mechanism
-prefetchDelay Delay first prefetch message
-prefetchFactor Prefetch message fill percentage
-prefetchNumRecs Minimum records in prefetch msg
-prefetchPriority Suspend queue poll priority
-Mn Maximum Number of Servers
-Nmsgwait Server network message wait time

Generally speaking, we suggest using:

-prefetchDelay -prefetchFactor 100 -prefetchNumRecs 9999

The idea is to fill every message buffer as much as possible. Note that the query must be of type 'no-lock' and prefetch for these parameters to have any effect. A share-lock or exclusive-lock query will always return one record per network message.

The -Mn parameter should be the sum of all the individual broker -Mpb values, plus the number of brokers, plus a good buffer. For example, if you start a 4GL broker with -Mpb 20 and a SQL broker with -Mpb 5, the calculated value of -Mn is 24 + 2 = 26, however the suggested value would be 40 or 50. The memory cost for the additional slots in the server table is negligible.

Per Broker Parameters

Parameter Description
-ServerType SQL, 4GL or Both
-S The TCP/IP listening port
-PendConnectTimeout Timeout for pending connections
-N Deprecated - always TCP - do not use
-Mpb Number of servers for this broker
-Mp Deprecated - do not use
-Mm Message buffer size
-Mi Minimum users per server
-Ma Maximum users per server
-minport Minimum port number for spawned server
-maxport Maximum port number for spawned server
-ipver IPV4 or IPV6

We always suggest segregating SQL connections and 4GL connections to separate brokers, using the -ServerType startup parameter.

As of OpenEdge 12, the SQL broker and the 4GL broker are multi-threaded, so there is no need to start a large number of server processes. 20 users per server (-Ma 20) is acceptable, then set the number of servers (-Mpb) accordingly. For example, 100 users could be served by a broker with -Mi 1 -Ma 20 -Mpb 5. Do not, however, start only one server. Start at least two (-Mpb 2).

In OpenEdge 10, there is a known bug with the SQL broker forcing a maximum of 5 users per server (-Ma 5). Adjust -Mpb accordingly.

For OpenEdge 11 or earlier 4GL brokers, -Ma 5 is good starting value. Higher values could be used for less active users and lower values for more active users.

If your application relies heavily on AppServer processes connected in client/server mode, consider using -Mi 1 -Ma 1 to dedicate one server process per AppServer/WebSpeed agent. The commercial version of ProTop includes long-term statistics on agent usage which can help you select optimal broker startup parameters.