How applications access and use the image service cache

A cached image service can behave as either a static or dynamic image service. Generally, due to the tiled structure and static nature of a cached image service it will be faster than one that is not cached (or accessed as a dynamic service). When you access a cached image service it's default behavior is static and you will have limited access to the service properties—meaning you cannot modify the mosaic method or transmission compression.

Any web application that can display an image service uses the cache, although how the tiles are retrieved and used varies between applications.

ArcMap

When you display an image service in ArcMap that has been cached, it will have limited image service capabilities. For example, you will not be able to change the mosaic method or transmission compression method. But you will still be able to do things like change the symbology and enhancement, perform an identify on the pixels, query the data, and download the source data.

If you need to work with the image service dynamically and use functionality such as the mosaic method, then you can change the layer's mode. To change the mode, right-click the image service layer and uncheck Enable Cache View Mode. To use the image service as a cached service, just check this option back on.

Web applications

When developing with the ArcGIS web APIs for JavaScript, Flex, and Silverlight, you use the ArcGISTiledMapServiceLayer class to connect to a cached image service. When you use the cached image service, tiles are retrieved from the cache directory by REST calls to the image service. The tile request takes the form http://<image service URL>/tile/<level>/<row>/<column>.

If you are viewing a single cached service in any web application and pan to an area where tiles do not exist, the application does not display a dynamic image; instead, you don't see anything.

TipTip:

If the image service appears more slowly than expected, examine the URLs of the image service to verify that the application is retrieving tiles. One way to do this is to open the application in Mozilla Firefox 4 and click Firefox > Web Developer > Web Console. When the console appears, click the Net button, then zoom or pan your image service.

TipTip:

Make sure the data source being cached is in the same projection as the other data used in the web application. If it's not, then you may not see your data, since most web applications cannot reproject the data. Also, make sure the tiling scheme is the same for the cached image service as the other cached layers in the web application; otherwise, not all layers will be visible.

Overlaying caches in web applications

As noted earlier, when designing image service caches that will overlay with other cached services, there are some important cache design factors to consider. Web applications such as the ones built with the ArcGIS APIs for JavaScript, Flex, and Silverlight require that you match coordinate system and tile size when overlaying caches. It's also a good practice to match as many scales as possible. The easiest way to do this is to match tiling schemes for both caches, then only create tiles at the scales that make sense for each cache. This way, you can be sure that you've matched coordinate system and tile size and that the software recognizes that the two caches have scales in common.

The recommended tiling scheme is the ArcGIS Online/Google Maps/Bing Maps tiling scheme.

OGC's WMTS

The Open Geospatial Consortium, Inc. (OGC), Web Map Tile Service (WMTS) specification is an international specification for serving digital maps over the web using cached image tiles. When you create a cached map or image service using ArcGIS Server, the service and its tiles are automatically accessible using the WMTS specification.

The URL to connect to a cached image service using the WMTS protocol uses the following pattern:

http://gisserver.domain.com:6080/arcgis/rest/services/folder/service/ImageServer/WMTS

Learn about WMTS

12/18/2014