Production Server™ supports asynchronous execution
of client requests. The following configurations in the server’s
impact the how the server supports this functionality:
request-timeout configuration parameter specifies the duration after
which a request in a terminal states times out and gets deleted.
server-memory-threshold configuration parameter specifies the size
threshold of the server process at which point action needs to be taken to manage the
responses. The size threshold includes both the size of the base server process plus any
growth in the server process resulting from processing a client request.
server-memory-threshold-overflow-action configuration parameter
specifies the action to be taken when the memory size threshold of server process has
been breached. The possible actions are that the responses be archived to disk or the
request be purged.
Setting too small a
request-timeout can lead
to a request being timed out before a client fetches the response.
both the size of the base server process plus any growth in the server
process resulting from processing client requests, setting too small
server-memory-threshold can lead to responses
being archived or purged before being retrieved.
Since the operating system governs memory management, the memory
footprint size of the base server process may not return to its original
size even after a response has been archived or purged. The size of
the base server process in most cases ends up being larger than its
original size. As a result, subsequent requests to the server may
have a much smaller range of memory to work with before reaching the
server-memory-threshold to be
too large will result in a large server process footprint which may
not be required.
These configuration parameters need to be set appropriately and carefully balanced in order to provide a suitable contract between a client and a server.