You are here: Reference > Hand-Editing Configuration Files > Basic Express Server Configuration Using XML Files > The ImageManager Element

The ImageManager Element

In order to enable maximum performance with minimal resource requirements, Express Server employs certain strategies in its image handling. The ImageManager configuration element allows you to define parameters used in these strategies.

The ImageManager element contains the following editable attributes:

itemCacheSize

The first time Express Server receives a request for data from a particular item, it loads data about the item into memory for quick access later. Since a given item may be gigabytes in size, it does not load the whole item into memory. Rather, it only loads information which allows it to access the item efficiently in response to subsequent requests. This information is stored in an internal memory cache called the "Item Cache". This attribute specifies the maximum number of items held in the Item Cache.

The default value is 1000.

NOTE: JPEG 2000 source imagery uses a lot of memory. Setting this value lower (150-200) will help ensure that you don't run out of memory when JP2 source images are being used.

imgCacheSize

Each item contains one or more or images. These images are also cached for quick retrieval, in the image cache. The imgCacheSize attribute specifies the maximum number of images which can be stored in this cache.

The default value is 500.

maxConcurrentExtractions

The most CPU expensive operations on Express Server are extractions. These operations occur in response to getimage requests in the Web API, GetMap requests in the WMS API, and ltcsExtract functions in the C API. In these operations, Express Server decodes a portion of the source image, and reencodes to an output format such as TIFF or JPEG.

If Express Server is hit with a large number of extraction requests at one time, then server performance may suffer.

This configuration attribute specifies the maximum number of extractions that may be processed concurrently. Extraction requests occurring in excess of this number are placed in queue, and handled on a first-come, first-served basis.

If this attribute is missing, or its value is set to 0, then the number of concurrent extractions is not limited.

The default value is 50.

extractionTimeout

Specifies the maximum number of seconds that an extraction request will wait in queue before it is discarded.

This value is ignored if maxConcurrentExtractions is 0 or missing. If the attribute is missing, or is set to 0, then the pending extraction requests will wait indefinitely.

The default value is 50.

extractionListSize

As noted above, the most CPU expensive operations are extraction requests. If certain scenes are extracted frequently, then caching them to disk may have a beneficial effect upon performance.

Express Server keeps track of requested extraction scenes, and when it notices that one or another scene is requested frequently, it will cache the result to disk for quick access later. This configuration attribute specifies the number of extraction requests Express Server monitors for each image.

For example, if the value is 10, then Express Server will keep track of each image's last 10 extractions. If either this value or extractionCacheTrigger is set to 0 or missing, then Express Server will not monitor scene extractions.

The default value is 50.

extractionCacheTrigger

This specifies the number of times a particular scene may be requested before it is cached to disk. For example, if this value is set to 3 and the extractionListSize is 10, then a particular scene will be cached to disk if 3 out of the last 10 extraction requests for that image were for that scene.

This value is ignored if extractionListSize is 0 or missing.

The default value is 2.