Contents Index Tuning throughput by controlling Message Agent threading Tuning incoming message polling

SQL Remote User's Guide
  SQL Remote Administration
    Tuning Message Agent performance

Tuning throughput by caching messages


The Message Agent caches incoming messages in a configurable area of memory as it reads them.

Specifying the message cache size 

The size of the message cache is specified on the Message Agent command line, using the -m option.

The -m option specifies the maximum amount of memory to be used by the Message Agent for building messages. The allowed size can be specified as n (in bytes), nK, or nM. The default is 2048K (2M).

Example 

The following command line starts an Adaptive Server Anywhere Message Agent using twelve Megabytes of memory as a message cache:

dbremote -c "eng=..." -m 12M
How messages are cached 

When transactions are large, or messages arrive out of order, they are stored in memory by the Message Agent until the message is to be applied. This caching of messages prevents rereading of out-of-order messages from the message system , which may lower performance on large installations. It is especially important when messages are being read over a WAN (such as Remote Access Services or POP3 through a modem). It also avoids contention between worker threads reading messages (a single threaded task) because the message contents are cached.

When the memory usage specified using the -m option is exceeded, messages are flushed in a least-recently-used fashion.

This option is provided primarily for customers considering a single consolidated database for thousands of remote databases.


Contents Index Tuning throughput by controlling Message Agent threading Tuning incoming message polling