This workflow explains how to modify the default configuration of a map service. To begin the process, set general properties, and publish, see Publish a map service.
When you configure a map service, you can set its drawing behavior, the types of user operations it supports, the way server resources are allocated to it, and many other properties. Configuration is divided into three areas: capabilities, parameters, and pooling.
You can extend your map service functionality by enabling a number of capabilities, each with its own configurable properties. Enabling a capability may create another service, such as a feature service, in addition to your map service.
Follow these steps to configure capabilities:
- In the Publish Map Service pane, click the Configuration tab. If necessary, click the Configure Capabilities tab under it.
- Under Capabilities, select a capability check box to enable it.
The capabilities are described in the following table:
Capability Description Special requirements
Provides access to your map through REST and SOAP URLs.
This is always enabled.
Creates a feature service that provides access to vector features in the map. This capability is often used for editing.
Requires vector layers from an enterprise geodatabase.
Solves transportation network analysis problems using the ArcGIS Network Analyst extension.
Requires a network analysis layer referencing a network dataset.
Creates a service compliant with the OGC Web Map Service (WMS) specification.
Creates a service compliant with the OGC Web Feature Service (WFS) specification.
Requires vector layers from an enterprise geodatabase. This capability is only available when publishing to ArcGIS Server 10.7 and later.
Creates a service compliant with the OGC Web Coverage Service (WCS) specification.
Requires raster layers. This capability is only available when publishing to ArcGIS Server 10.7 and later.
Provides access to your map through custom KML network links.
None. This capability is only available when publishing to ArcGIS Server 10.7 and later.
Map service capabilities
If a custom server object extension (SOE) or a server object interceptor (SOI) is deployed on your server, it is also available in the capabilities list. Use ArcGIS Server Manager to update the order of SOI execution after the service has been published.
Certain capabilities, including custom SOEs and SOIs, are not supported by shared instance pooling. See the Configure pooling section below.
After you enable a capability, you can configure its properties. Steps to configure properties for map and feature capabilities are provided in the sections below.
Configure map service properties
When you publish a map service, the Map capability is always enabled. Follow these steps to configure the map service properties:
- On the Configuration tab, on the Configure Capabilities tab , click the Configure Service Properties button next to the Map capability.
- Under Operations, select the operations to allow on your map service. By default, Map, Data, and Query are enabled.
Allows the Export Map, Generate Renderer, Generate KML, and Query Legends methods to be used. This operation cannot be turned off.
Allows the Find, Query, and Query Related Records methods to be used.
Allows the Identify method to be used.
- Under Dynamic Workspaces, optionally uncheck Allow per request modification of layer order and symbology.
Unchecking the box prevents client applications from dynamically changing the appearance or behavior of the map service. For example, if the box is not checked, client applications cannot change layer order, symbology, or labeling.
- Under Caching, choose how the service will be drawn:
Dynamically from data
Data is retrieved and drawn each time it is requested. This is the default.
Using tiles from a cache
Data is drawn from cached images generated at map scales you define.
The default setting is to draw the map image layer dynamically from data. If you use tiles from a cache, additional settings appear in the pane. Continue with the following substeps:
- Click the Tiling Scheme drop-down arrow and choose a tiling scheme for your cache.
The tiling scheme determines the scale levels, tile dimensions, and tile origin of the cache. These properties define tile boundaries and must be consistent for different services to align in a web map. The available tiling schemes are described in the following table:
Option Description ArcGIS Online/Bing Maps/Google Maps
The web layer is projected to the WGS 1984 Web Mercator (Auxiliary Sphere) coordinate system. The default tile width and height is 256 by 256 pixels. Scale levels for caching range from 0 to 23.
WGS 1984 Geographic Coordinate System, Version 2
The web layer is projected to the WGS 1984 Geographic Coordinate System. The default tile width and height is 256 by 256 pixels. Scale levels for caching range from 0 to 22.
Existing cached map/image service
The tiling scheme of an existing hosted tile layer or an existing ArcGIS Server map or image service is used. The tiling scheme .xml file of the layer or service is downloaded to C:\Users\<user profile>\My Documents\ArcGIS\TilingSchemes\Downloaded. ArcGIS Pro honors the parameters specified in the existing layer or service, with the exception of antialiasing. Antialiasing options set for the application are used.
Tiling scheme file
A tiling scheme that you create is used. You can create a tiling scheme .xml file with the Generate Map Server Cache Tiling Scheme geoprocessing tool. Additional tiling scheme files can be imported from C:\Program Files\ArcGIS\Pro\Resources\TilingSchemes. The tile image format defaults to PNG if the tile image format is not defined in the tiling scheme file. ArcGIS Pro honors the parameters specified in the tiling scheme file, with the exception of antialiasing. Antialiasing options set for the application are used.
This is the default option unless the coordinate system of your map is WGS 1984 Web Mercator (Auxiliary Sphere) or WGS 1984. A tiling scheme is suggested based on the coordinate system of your map. The levels of detail defined in this tiling scheme are valid for a global extent, so any web layers cached using this tiling scheme can be displayed together.
- Under Levels of Detail, use the sliders to set the map scales for which tiles are generated.
A default scale range is provided. Depending on the purpose of your map and the estimated cache size, you may choose not to cache very large or small scales.
- For Image format, accept the default or choose a setting. Use the following table for reference.
If all sublayers in the web layer have vector data sources, the default setting is PNG. If one or more sublayers has a raster data source, the default setting is MIXED.
Use PNG to select the correct format (PNG8, PNG24, or PNG32) automatically based on the levels of detail that are being cached.
Use PNG8 for overlay services that need a transparent background, such as roads and boundaries. PNG8 creates tiles of very small size on disk with no loss of information.
Do not use PNG8 if your map contains more than 256 colors. Imagery, hillshades, gradient fills, transparency, and antialiasing may cause your map to use more than 256 colors. Symbols such as highway shields may have antialiasing around the edges that unexpectedly adds colors to your map.
Use PNG24 for overlay services, such as roads and boundaries, that have more than 256 colors. (If fewer than 256 colors are used, choose PNG8.)
Alternatively, use PNG32 for overlay services, such as roads and boundaries, that have more than 256 colors. PNG32 is a good choice for overlay services that have antialiasing on lines or text. PNG32 creates larger tiles on disk than PNG24.
Use this format for basemap services that have large color variation and do not need a transparent background. Raster imagery and very detailed vector basemaps tend to work well with JPEG.
JPEG is a lossy image format. It attempts to selectively remove data without affecting the appearance of the image. This can cause very small tile sizes on disk, but if your map contains vector line work or labels, it may produce too much noise or blurry area around the lines. If this is the case, you can increase the compression value from the default of 75. A higher value, such as 90, may balance an acceptable quality of line work with the small tile size benefit of the JPEG.
The MIXED format uses JPEG in the center of the web service and PNG32 on the edges. Use MIXED to overlay raster services on other layers.
When the MIXED format is used, PNG32 tiles are created anywhere that transparency is detected (in other words, anywhere that the map background is visible). The rest of the tiles are built using JPEG. This keeps the average file size down while providing a clean overlay of raster layers on top of other layers. If you do not use the MIXED format in this situation, you will see a nontransparent collar around the edge of your image where it overlaps other layers.
- For Compression, accept the default compression quality value or specify a different value.
Compression is available only if the format is JPEG or MIXED. (PNG formats are not compressed.) Values between 0 and 100 can be used. Higher values result in a larger file sizes with higher quality imagery. Lower values result in smaller file sizes with lower quality imagery. The default value is 75.
- Under Options, choose how to build the cache.
The storage estimate under Estimate at the bottom of the pane may help you decide how to build the cache.
Cache automatically on the server
The cache is built automatically. This is the default setting and is generally best for small caches.
Cache manually on the server
You build the cache manually using the Manage Map Server Cache Tiles tool. This option is best for large caches. It is recommended that you build the cache in phases, first caching the largest map scales at areas of interest that are most likely to be requested.
When you save a service definition, the cache must be built manually after the map service is published.
- Optionally, click the Cache directory drop-down arrow and change the server cache directory where the cache tiles will be stored.
- Optionally, check the Allow clients to export cache tiles box to allow users to download cache tiles for offline use.
When this option is checked, you can specify a value in the Limit export to box to limit the number of tiles that can be downloaded in a single request.
- Optionally, check the Create tiles on demand box.
Tiles are built only through caching, either automatically or manually. This is the default.
Tiles that are not cached are created on demand (that is, when a client application requests them). This occurs mainly in the following situations:
- Tiles are cached automatically on the server and you specified an area of interest for the cache extent. In this case, tiles are cached only for the area of interest. Tiles are created on demand for the rest of the map extent.
- You cache tiles manually on the server. In this case, tiles are cached for the scales selected in the Manage Map Server Cache Tiles tool. Tiles are created on demand for scales that are not selected.
- Under Extent, choose an extent to cache.
Use map extent
Tiles are cached for the extent specified in the map properties. The default setting is the extent of all layers in the map. If you publish selected map layers, tiles are cached only for the combined extent of the selected layers.
Area of Interest
Tiles are cached for the extent of a feature layer in the map. Use the drop-down list to choose a layer. Alternatively, click the Browse button and browse to a feature class on disk.
If you cache manually on the server, cache extent options are not available in the Publish Map Service pane. They are available in the Manage Map Server Cache Tiles geoprocessing tool that you use to build the tiles.
- Optionally, under Estimate, click Calculate to estimate the cache size. On the Estimate Cache Size dialog box, click the drop-down arrow and choose Good or Best for the estimation quality. Click the Start estimating cache button . The number of tiles and storage space is estimated for each cached level of detail and totaled. Click OK.
The default static estimate is based on a general assumption about average tile size and does not consider the specific properties of your map. When you estimate the cache size, sample tiles of your map are built. This means that the tiling scheme, image format, and compression are taken into account (as is LERC compression for elevation layers). If an area of interest is specified as the caching extent, the area of interest is estimated.
The best estimate creates more sample tiles and takes longer to calculate than the good estimate. To cancel the estimation process, click Stop estimating cache . If you adjust the tiling scheme after estimating the cache size—for example, if you change the levels of detail or the image format—the quality estimate on the sharing pane reverts to static. You need to estimate the cache size again.
- Click the Tiling Scheme drop-down arrow and choose a tiling scheme for your cache.
- If you enabled the Feature capability and want to configure your feature service, click the Back button at the top of the pane to return to the list of capabilities. Otherwise, you can configure parameters or configure pooling.
Configure feature service properties
When you enable the Feature capability, a feature service is created in addition to the map service. Feature services make feature data and nonspatial tables available to client applications. The lifetime of the map service controls the lifetime of the feature service.
Complete the following steps to configure the feature service properties:
- On the Configuration tab, on the Configure Capabilities tab , confirm that the Feature capability is enabled.
The Feature capability appears only when the Data option on the General tab is set to Reference registered data.
- Click the Configure Service Properties button next to the Feature capability.
- Under Operations, check the Enable editing and allow editors to box to enable feature service editing. Choose one of the following options:
Add, update, and delete features
Editors can add, update, and delete feature geometry and alter the attributes of features. This is the default option.
Update features only
Editors can provide attribute information for existing features. They cannot add new features or modify or delete existing feature geometry.
Add features only
Editors can add new features and provide attribute information for these new features only. They cannot modify or delete existing feature geometry or attribute information.
- Check the Enable Sync box to allow users to work with a local copy of the data when they are offline and to synchronize their changes when they are online.
- Check the Export Data box to allow users to export the data to different formats.
- Check the Apply default to features with z-values box to allow editors to add or update features through clients that don't allow input of a z-value.
If this property is enabled, specify a default z-value in the Default z-value when inserting or updating features box.
- Check the Allow geometry updates without m-value box to allow geometry updates to m-enabled features without specifying an m-value.
- Optionally choose a Sync option. Additional sync options are available if you checked the Enable Sync check box, are publishing to ArcGIS Server 10.8.1 or later, and the Data option on the General tab is set to Reference registered data. A default selection is provided based on the data's versioning type.
Create a version for each downloaded map
Create a version from the published version each time a map is taken offline. This is the default if your data's versioning type is traditional.
Create a version for each user
Create a version for each user who downloads the map.
No version is created when the map is downloaded. This is the default if branch versioned data is present.
The following table shows valid sync options for each versioning type. Choose the sync option that best suits your offline work.
- Create a version for each downloaded map
- Create a version for each downloaded map
- Create a version for each user
- If you enabled other capabilities and want to configure them, click the Back button at the top of the pane to return to the list of capabilities.
The Allow update of true curves check box is enabled by default to allow web clients to update the true curve geometry of a feature with densified geometry.
The Only allow true curve updates by true curve clients check box is enabled by default to only allow clients that support true curves, such as ArcGIS Pro, to update true curve geometries.
Map services have a number of configurable parameters. Parameter settings apply to the map service and to any additional services created by enabling capabilities.
- In the Publish Map Service pane, on the Configuration tab, click the Configure Parameters tab .
- Under Properties, specify a value for Maximum records returned by server.
This setting determines how many records can be returned in a single request to a client, such as an ArcGIS Web API. Specifying a large number of records may slow the performance of clients consuming your service as well as your GIS server. The default value is 2,000.
- Expand the Advanced heading to set the following service parameters:
- Enter a value in the Max number of coded domains box to specify the maximum number of domain codes returned from fields, subtypes, layers, and tables in the map service. The default value is 25,000.
- Specify values in the Max image height and Max image width boxes. These values represent the maximum height and width in pixels of images the map service can export. The default for both values is 4,096.
- Enter a value in the Max sample size box to specify the maximum number of records that is sampled when a class breaks renderer is computed. The default value is 100,000.
- Optionally, uncheck the Enable schema locking box to disable schema locking. By default, the map service uses schema locking to prevent modifications to the source dataset schema while the service is running.
- Optionally, check the Disable identify relates box. If the box is not checked (the default), information from related tables is returned when a feature is identified. If the box is checked, information from related tables is not returned.
- If necessary, under Date Fields, choose a time zone from the Time zone menu.
Specifying the time zone allows date and time values to be converted correctly when users interact with the service. If you choose a time zone other than UTC (coordinated universal time) and you want the time zone to account for daylight saving time, check the Adjust For Daylight Saving box.
You only need to choose a time zone if your map contains layers with date fields. Choose the time zone in which the dates are stored. If you don't specify a time zone, the dates are assumed to be stored in UTC.
Pooling settings help you manage server traffic effectively while conserving memory resources on server machines. To learn more about pooling, see Anticipate and accommodate users and Configure service instance settings in the ArcGIS Enterprise help. Also see the online article Introducing shared instances in ArcGIS Server 10.7.
- In the Publish Map Service pane, on the Configuration tab, click the Configure Pooling tab .
- Under Instance Type, click Dedicated instance or Shared instance.
A dedicated instance allocates an ArcGIS Server process to handle requests exclusively for this map service. A shared instance allows one server process to handle requests for this map service and other services. Generally, dedicated instances are better for frequently used services, and shared instances are better for infrequently used services.
Shared instance pooling can only be set from ArcGIS Pro if your ArcGIS Server version is 10.7.1 or later.
- If you choose the dedicated instance type, under Number of instances per machine, set values for the Minimum and Maximum number of instances.
According to demand, server processes are allocated up to the maximum number of instances and down to the minimum number on each ArcGIS Server machine on which the service runs. If you set the minimum number to zero, processes are released if the map service receives no requests for a certain amount of time.
This setting is not used if you choose the shared instance type.