Local cache directories on the server

When many server machines try to write tiles into a shared cache directory at the same time, scalability degrades. One solution is to designate a local cache directory on each server object container (SOC) machine.

Local cache directories are only available with caches that use the compact storage type. The server writes one bundle file (which can include up to about 16,000 tiles) to the local cache directory. When complete, the bundle is moved to the shared cache directory. Writing bundles locally and moving them to the shared cache directory is more scalable than having all the machines write the bundles directly into the shared cache directory.

To take advantage of local cache directories, you need to do these things:

  1. Designate a local cache directory on each SOC machine.
  2. In the Caching tab of the Service Properties, check the box to Use local cache directory when generating tiles on the server.


    If you're creating a cache with geoprocessing tools, the option to use a local cache directory is a parameter in the Create Map Server Cache tool.

Local caching on the server only helps performance when the shared cache directory is on a different physical machine from where the tiles are being created and staged.

Setting the local cache directory location

The default local cache directory is the temp folder for the SOC account unless you define a system variable, ARCTMPDIR, on the computer whose value is some other folder. It's recommended that you have at least 0.5 GB of available space in this location for each running map service instance (ArcSOC.exe) dedicated to caching. More space may be required for JPEG caches that use a high compression quality, or detailed PNG caches with high bit depth.