Publishing map services

ArcMap includes a series of tools that enable you to optimize and tune your ArcMap documents for publishing high-performance, scalable map services to ArcGIS Server. As an ArcMap user, it's always important to explore ways to increase the display performance of your interactive map documents, especially for maps that you plan to share with other users on the Web.

There are a few key scenarios for ArcGIS Server where map optimization and performance are particularly relevant:

The purpose of this help section is to provide the steps to publish optimized services for these and other related situations.

Publishing map services for ArcGIS Server

ArcMap includes a toolbar and workflow for analyzing and publishing optimized map services using a map service definition (MSD). Using ArcGIS Server, MSDs can be used to publish high-performance ArcGIS map services. These optimized map services support both real-time, dynamic map services and cached map services.

To support optimized map services using MSDs, ArcGIS includes a high-performance, scalable mapping engine, which can generate dynamic, high-performance maps on the fly (as well as cached map services) using the advanced cartography that you design and create in ArcMap. This work is accomplished through a simple workflow—generate a map in ArcMap, analyze and optimize it for performance, save it as an MSD, then publish the MSD as a map service to ArcGIS Server.

ArcMap includes the Map Service Publishing toolbar to perform each of these steps.

Using the Map Service Publishing toolbar

The Map Service Publishing toolbar helps you analyze the drawing performance of your ArcMap documents. It is used perform all the steps to publish an optimized map service to ArcGIS Server from ArcMap.

The Map Service Publishing toolbar
Right-click the main menu in ArcMap to access the Map Service Publishing toolbar.

Steps

The process of creating and publishing an optimized map service uses a straightforward workflow:

First, design and create a map document in ArcMap. Then, perform the following steps to publish a map service to ArcGIS Server.

  1. Analyze your ArcMap document by clicking Analyze Analyze Map on the Map Service Publishing toolbar. Address errors and other issues identified in the map analysis. See Analyze and repair map drawing performance below for instructions on how to do this work.
  2. Preview the map service Preview Map.
  3. Publish a map service using the MSD for ArcGIS Server Publish To ArcGIS Server.
  4. Over time, periodically assess your map document by following the steps above to ensure that you maintain map performance.

An alternative to publishing directly from ArcMap is to Save your ArcMap document as an MSD Save Map Service Definition. The map service definition can then be published in ArcCatalog or in the ArcGIS Server Manager.

Analyze and repair map drawing performance

One of the important tasks that you can perform with the Map Service Publishing toolbar is to analyze your map document to identify potential performance bottlenecks and map errors that you will need to address before you can create an optimized map service from your ArcMap document.

Steps for performance analysis

  1. First, turn on the Map Service Publishing toolbar in ArcMap by right-clicking the main menu and selecting this toolbar from the alphabetical list of toolbars.
    Opening the Map Service Publishing toolbar
  2. Next, click Analyze Analyze Map.

    This will generate a report that will appear in a scrolling panel at the bottom of your ArcMap application window.

    Prepare window
    The results of your map performance analysis will appear in a panel at the bottom of your ArcMap window and list potential errors and issues that can affect the display performance of your map.
    This report identifies errors and other potential issues that you should address prior to publishing your map document as an optimized map service. It helps you identify layer and symbology types that are not supported for optimized map drawing performance, warnings for issues that can potentially slow down display performance, and other information messages about your map document that can help you optimize its performance as a map service. You will see three types of messages in this report:
    • Error messages Error image. These are issues that must be fixed before you can publish the map document as an optimized map service with ArcGIS Server. Errors typically refer to your map's use of map layer types or display options that are not supported for optimized map services.

      For example, errors in your map document might include

      • Use of some layer types (like topology layers) that are not supported for optimized map services in ArcGIS Server
      • Use of some advanced symbology options that can potentially have sluggish display performance (like some statistical or chart symbology)
      All errors must be repaired before you can publish a map service definition.

    • Warning messages Warning image. These are issues in which drawing performance or drawing appearance may be affected. For example:
      • You may be able to increase performance by creating a spatial index for a map layer's feature class.
      • An image format for a raster layer may be a data type that draws more slowly than others.
      • An existing map layer may be projecting on the fly into the map's output coordinate system, which can cause map performance to slow down. Using a common coordinate system can speed up map drawing performance.
      You have the option to correct or ignore issues identified in warnings. If you choose to ignore a warning, you can mark it as an exception by right-clicking the warning message and selecting Mark As Exception as shown here:
      Marking a warning as an exception
    • Information messages Information image. These identify potential differences in the portrayal of your map display generated using MSDs and other informative messages to be aware of.

  3. Repair each of the errors and determine how to address each of the warning messages identified by the map performance analysis.
    The Prepare window
    Right-click each message to get a quick suggestion on how you can fix that specific issue as well as to access a help topic with more information about the issue (such as additional repair options). The item in bold in each list will provide the default approach for addressing each issue.
  4. Make a copy of your error messages and warnings.

    Addressing the display performance issues in some maps with many layers can be involved because of the large number of errors and warnings that will be listed. In these cases, you may want to save the error messages in a document for later use. You can select errors and copy and paste their descriptions into another application to help manage these updates at a later time.

Preview your map service display in ArcMap

Once you have analyzed map performance, corrected errors, and made other changes in your ArcMap document, you should preview your map service to test its performance and responsiveness. Previewing the map also will give you a chance to determine if any of the drawing differences between the standard ArcMap display and the drawing engine used by optimized map services affect your map.

Learn more about the drawing differences between the ArcGIS drawing engines.

This step is performed with the Preview map service button on the Map Service Publishing toolbar. Here are the steps:

Steps for map service previewing

  1. Click the Preview button Preview Map on the Map Service Publishing toolbar , and the Preview ArcGIS Server window will appear as shown here.
    Previewing a map service definition
    The map can be previewed in this panel. This uses the map service definition for map display. The Time field on the top menu bar shows display performance in seconds as you pan, zoom, and navigate around your map. This will help you to get a sense about your map display performance and help you determine if additional performance warnings need to be addressed.
  2. Use the Preview window to navigate around your map. This will help you test its display performance.
  3. Optionally, you can specify the image format and examine the anti-aliasing settings in your MSD for previewing your map service. To set the image format, click the top-right arrow button on the Preview ArcGIS Server window and select Properties.
    Click here to set the image format and to preview the anti-aliasing properties for your map service.
    A dialog box for setting the image format will appear. This dialog box will also show the settings for anti-aliasing that will be saved in your MSD. See Anti-aliasing Map Settings below for how to set anti-aliasing properties.
    Select the image format for your map service.

About setting the image format of your map service

In ArcGIS Server, a map is generated on the server computer and streamed to the end user's application as a series of image tiles. The user's Web client application may request the map in a number of image formats (such as PNG 8 or PNG 24). You can specify the raster format you want to use for previewing your map service.

Map services are delivered as tiles on the Web.

Image format options. The choice of image format is important, because it can affect the amount of network traffic required for map delivery, the image quality, and image transparency. Here is a brief description of the preview options for image format:

Drop-down list of image format choices for your map service

Here is a summary of the available image formats and their appropriate uses:

If you are also responsible for configuring the Web map client application to be used, you can test your raster settings in the Preview ArcGIS Server window before committing to an image format.

Anti-Aliasing Map Settings

When you publish a map service using an MSD, you can set two anti-aliasing properties that can affect the picture quality of your map service as well as its performance. The ArcGIS Server Options dialog box enables you to set options for anti-aliasing. Access this from the Options button Map Service Publishing Options on the Map Service Publishing toolbar.

The dialog box for setting anti-aliasing options will appear:

Anti-aliasing options for your map service

Once you set these options, you should test your settings by opening another preview window Preview Map and interacting with the map display.

Anti-Aliasing Options. Anti-aliasing is a graphics technique that blends foreground and background pixels near edges of objects to trick your eye into seeing smoother borders. You can use this option if unwanted artifacts appear in your map displays—for example, jagged lines, wavy lines or bands, and moiré patterns.

Anti-aliasing options

The amount of filtering to be applied for anti-aliasing will affect performance. However, be aware that not enough filtering can potentially generate an image with unwanted artifacts. The range of anti-aliasing options allows you to choose the option that gives you a good map image view without sacrificing too much performance. Alternatively, you can choose a slower yet more effective technique to get the map display that meets your needs but performs more slowly.

Use these options to experiment to get the effect and performance that will meet your needs.

  • None—No anti-aliasing is performed.
  • Fastest—Minimal anti-aliasing is performed, optimized for speed.
  • Fast—Some anti-aliasing is performed, optimized for speed with better quality than fastest.
  • Normal—A good balance of speed and quality.
  • Best—The best quality anti-aliasing. This option takes the longest to render.

If anti-aliasing is not needed for improving map display clarity, use None, because it will provide the best performance.

Text Anti-Aliasing Options. Anti-aliasing text is the process of blending text font edges so that characters appear less jagged. Control of text anti-aliasing is important. Too much might make text fuzzy and blurred, and too little might make text appear as jagged. Map display performance is not affected by text anti-aliasing, but it may affect image size.

The text anti-aliasing options are shown here:

Anti-aliasing Options for Text
  • None—No text anti-aliasing is performed.
  • Normal—Text anti-aliasing is performed as determined by the font. Each individual font has parameters created within it by the font author that define at which sizes the font should draw with anti-aliasing.
  • Force—Text is always drawn with anti-aliasing, regardless of the individual font's parameters. This is the recommended setting.

Use these options to experiment to create the effect and performance that will meet your needs. If text anti-aliasing is not needed for improving map display clarity, use None, because it will result in smaller image sizes.

Publish a map service to ArcGIS Server

Once you have saved your MSD, the next step is to create a map service for deployment using ArcGIS Server. You can choose to publish your ArcGIS map service directly from ArcMap using the workflow described here. All the other map publishing methods for ArcGIS Server are also supported by saving and publishing a Map Service Definition (for example, publishing a map service in the ArcGIS Server Manager Web application console).

Selecting the Publish to ArcGIS Server Publish To ArcGIS Server button will take you through the following steps to create your map service for use with ArcGIS Server.

Steps

  1. When you click the Publish to ArcGIS Server button, the map is automatically analyzed for performance first. This ensures that any changes to your map will work correctly in the map service. This will help you catch any last minute changes that may be required.

    Review and repair any errors in this map analysis report as described in Analyze and repair map drawing performance.

  2. Then, if there are no errors, the Publish to ArcGIS Server wizard will appear as shown here:
    Publishing an optimized map service in ArcMap

    In this wizard, you will

    • Select the ArcGIS server you will use.
    • Enter the name of the new map service to be created.
    • Identify the folder that you will publish the map service into.

  3. If you want to make the map service available as KML or WMS, click Next. Otherwise, click Finish and go to the final step.

    A second page of the wizard will appear where you choose the additional capabilities you want to publish for this map service.

    Turning on KML and WMS publishing of your map service
    Click the additional map capabilities that you would like to publish and click Next to see a summary, or select Finish to be done.

  4. A summary panel appears that lists the properties of the map service that will be created. For example:
    A summary of the map service to be published
    Review the summary information for your map service. The summary page will list the location the map service definition will be copied to in the arcgisinput directory on the server.
  5. If you are done, click Finish to create the map service.

Validating data connections on the server

The publish command will validate whether the data connections your service is using are visible to the server. If there are problems with data connections, you will see a dialog box like the one below. Check to see if the SOC user account has privileges to the data as a first step to resolving this issue. You may need to move file-based data into a location where the SOC user account has permissions to read it.

Validate on Server shows that status of all data connections in your map service.

How to publish optimized map services to ArcGIS Server installations on UNIX and Linux

Publishing an optimized map service using an MSD file on Linux and UNIX uses a workflow similar to the procedure described above with one additional task—you need to reset the MSD's data source references to use UNIX/Linux paths for your map's file-based data sources. Below are the steps to complete this task.

Steps

  1. Organize the set of paths to your data sources for your map service on UNIX or Linux. If your map only references data stored in an enterprise geodatabase, you will not need to modify the paths of data, and the service can be published directly from ArcMap.
  2. Save your map document as a map service definition.
  3. Use the Set Data Sources command in ArcCatalog to replace the Windows file paths with UNIX or Linux file paths. This tool is intended for setting the paths of file based data sources from one path to another. It is not intended for use in changing data source types or changing the data sources of data with different schemas such as moving data from an enterprise geodatabase to a file geodatabase.
  4. Copy the updated MSD file to your UNIX or Linux system.
  5. Publish the MSD as an optimized map service using the Server Manager.

Save your ArcMap document as a MSD

Once you have analyzed your map document and previewed your map service, you can save your map document (along with your option settings for anti-aliasing) to an MSD. Press the Save button Save Map Service Definition on the Map Service Publishing toolbar. A save dialog box will appear to create an MSD. Its default name will be the ArcMap document's name with the file extension .msd.

Saving your ArcMap document as an MSD file

Your saved MSD will contain your map definition as a new format along with your settings for anti-aliasing and text anti-aliasing.

In ArcGIS Server, MSD files will use a high-performance, optimized map display engine to generate faster, more scalable maps. MSDs can be used for both dynamic map services that are generated on the fly (a key MSD advantage) as well as for cached map services. The cached map services will be generated more efficiently from an MSD because of faster map generation.

Optimized map services created using MSDs perform very well, and they are also scalable. Repeated tests have shown that dynamic map services created using an MSD will perform at least 25% faster than ArcIMS maps and will scale to support around 20% more users. In many cases, the time savings and scalability are much more dramatic.

NoteNote:

ArcMap standard map documents (MXDs) can also be used in ArcGIS Server for both dynamic and cached map services. However, as dynamic map services, they perform more slowly and will not scale as well for many users. When you need very high-quality cartography that leverages ArcMap advanced capabilities (for example, extension layer types and specific symbology types), use ArcMap MXDs because they will support the capabilities you'll need. You'll get what you want cartographically, but drawing performance will be slower. This is often very useful for generating cached map services where these types are needed (essentially precomputed maps that are the fastest map services).

Keeping track of the ArcMap document used as the source for each MSD

Publishing optimized map services involves creating an MSD using an ArcMap document (MXD). Once your MSD is generated, how do you keep track of the original MXD used to create the optimized map service?

Tracking the source document for an MSD is similar to tracking the source for a PDF, for example, tracking the original Microsoft Word document (.DOC file) used for generating a PDF.

It's helpful that the default name when creating an MSD is the same name as the ArcMap document (just like default PDF names). In this case, the map service definition file has an .msd file extension instead of an .mxd file extension. These companion files can be organized side-by-side on disk.

Also, if you want to document the source MXD as a property of your MSD file, you can right-click the MSD in ArcCatalog and record the map document name in the Comments field as shown here.

Documenting the MXD used for creating a map service definition

Periodically analyze and tune your map document for performance

Over time, periodically assess your map document to ensure that you maintain map performance.

It is important to recognize that changes to your underlying datasets can affect map drawing performance even if you have not made any changes to the map service definition. Indexes can be dropped, new fields can be added and updated, and data can be moved from one location to another.

Therefore, it's important to periodically repeat this workflow to analyze your maps, identify and address potential issues, and maintain strong performance of your optimized map services.

It is recommended that you periodically reassess your map document and its data sources by analyzing and addressing any ongoing performance issues that may arise.

Related Topics


8/20/2010