Customer Service | Training | Contact Us
Welcome!
Login
Search Options   products areas display

Which products should be considered?

All Products

ArcCAD
ArcEditor
ArcExplorer
ArcGIS Engine
ArcGIS Explorer
ArcGIS Image Server
ArcGIS Mobile
ArcGIS Server
ArcIMS
ArcInfo Desktop
ArcInfo Workstation
ArcLogistics Route
ArcPad
ArcPad Application Builder
ArcReader
ArcSDE
ArcView
ArcView 3.x
ArcWeb Services APIs
ArcWeb Toolbar for ArcGIS
Atlas GIS
BusinessMap
BusinessMap Pro
GIS Portal Toolkit
Job Tracking for ArcGIS
Maplex
MapObjects -- Java
MapObjects -- Windows
MapObjects IMS
MapObjects LT
MapStudio
Military Overlay Editor
NetEngine
PC ARC/INFO & DAK
PLTS
RouteMap
RouteMap IMS
SDE
Tracking Server

    Remember these settings for each visit More info
You are here:

Technical Article   HowTo:  Configure ArcGIS Server REST API for the Microsoft .NET Framework to improve stability and performance

Article ID: 36887
Software:  ArcGIS Server 9.3, 9.3.1
Platforms:  Windows XP, 2003Server

Summary

Instructions provided describe how to configure the ArcGIS Server REST API for Microsoft .NET Framework to improve the performance and reliability of ArcGIS Server REST Web services.

By default, the REST services are set up to impersonate the ArcGIS Web services user. When the REST services are subject to heavy load (more than 25 concurrent requests per second), the Local Security Authority Subsystem Service (lsass.exe) process, which is responsible for per-request authentication, can begin to use CPU and memory resources at an excessive rate. This can quickly lead to degradation of performance and stability of the REST services over time.

Procedure

To alleviate this problem, ESRI recommends ArcGIS REST Web services be configured to use a separate application pool with a fixed identity.

The steps below outline how to configure the ArcGIS Web Services (SOAP and REST) to run in a separate IIS application pool with the identity of the ArcGIS Web services user and how to disable per request impersonation.

The following instructions assume that the ArcGIS Web services account is called ArcGISWebServices (the default specified in the ArcGIS Server post installation utility). Modify this account name as appropriate for the system being used.

  • Install 9.3 Service Pack 1 or later.
  • Below are the instructions for Windows 2003 server:

    1. Create a new IIS Application Pool and set its identity to the ArcGIS Web services account. -show me-

    a) Open Internet Information Services (IIS) Manager and navigate through the tree structure to the Application Pool folder.

    b) Right-click the Application Pool folder and click New > Application Pool.

    c) Give the application pool an ID, such as ArcGIS Server Services Application Pool, and select to continue with the default settings.

    d) Right-click the new application pool and click Properties.

    e) Click the Identity tab and select Configurable.

    f) Enter the name and password of the ArcGIS Web services account that was specified during the ArcGIS Server post installation process. Click OK.

    g) Re-enter the password to confirm and click OK.


    2. Add the ArcGIS Web services account to the IIS_WPG local operating system group. -show me-

    a) From the Windows Control Panel > Administrative Tools, open the Computer Management window.

    b) Expand the System Tools group and the Local Users and Groups within it. Click on Groups.

    c) In the right side of the window, right-click on the IIS_WPG group and select Properties.

    d) In the IIS_WPG Properties dialog box, click Add...

    e) In the Select Users dialog box, change the 'From this location', if necessary, to the location that contains the user account for the ArcGIS Web services (ArcGISWebServices). If the account is on the local computer, the location should be the local machine name.

    f) Type the account name into the box for ‘Enter the objects names to select’, click Check Names, and select the user, or click ‘Advanced’, type account name or description and click ‘Find Now’, select the user from search results, and click OK to return to the Select Users dialog box.
    g) Click OK on the two dialog boxes to save the settings. Close the Computer Management window.


    3. Grant the ArcGIS Web services account permissions to the IIS metabase.

    If the Microsoft .NET Framework SDK is installed on the machine follow these instructions: -show me-

    a) Open a .NET command prompt with Start > (All) Programs > Microsoft .NET Framework SDK v2.0 > SDK Command Prompt.

    b) Type the following command at the prompt, substituting the ArcGIS Web services account name as appropriate:

    aspnet_regiis -ga ArcGISWebServices

    c) Close the .NET command prompt by typing 'exit' and pressing the Enter key.

    If the Microsoft .NET Framework SDK is not installed, these instructions apply: -show me-

    a) Run a 'cmd' window by typing 'cmd' in the 'Open:' text box in the 'Run' window accessed from 'Start > Run...'

    b) Type the following commands at the prompt, substituting the ArcGIS Web services account name as appropriate:

    cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727


    aspnet_regiis -ga ArcGISWebServices

    c) Close the command window by typing 'exit' and pressing the Enter key.


    4. Grant Modify permissions to the ArcGIS Web services account for the C:\Windows\Temp directory. -show me-

    a) Open Windows Explorer and navigate to the C:\Windows\Temp directory.

    b) Right-click on C:\Windows\Temp and select Properties.

    c) In the Properties dialog box, click on the Security tab.

    d) In the Security dialog box, click Add... This opens the Select Users dialog box.

    e) In the Select Users dialog box, change the 'From this location', if necessary, to the location of the ArcGIS Web services account, and type the account in the lower box (or browse to it with the Advanced button). Click OK to return to the Properties dialog box.

    f) In the Properties dialog box, make sure the ArcGIS Web services user is highlighted, and in the Allow column, check the Modify box.

    g) Click OK to save and close the Properties dialog box. Windows Explorer may also be closed.


    5. Set the ArcGIS Web services application to not use impersonation. -show me-

    a) Use Visual Studio or a text editor to open the web.config file in the C:\Inetpub\wwwroot\ArcGIS\Servicesfolder (the ArcGIS Services folder may have been installed at a different location).

    b) In the web.config file, change the value for the Impersonate key to false:

    <appSettings>
    
    <add key="ServiceInfoRefreshTimeInSeconds" value="10" />
    <add key="GCInterval" value="10" />
    <add key="Impersonate" value="false" />
    </appSettings>


     If the Impersonate key does not exist, add it by inserting the <add> element and set the key attribute to 'Impersonate' and the value attribute to 'false' as shown above.

    c) Save the web.config file.


    6. Set the ArcGIS REST application to not use impersonation. -show me-

    a) Use Visual Studio or a text editor to open the rest.config file in the C:\Inetput\wwwroot\ArcGIS\REST folder (the ArcGIS REST folder may have been installed at a different location).

    b) In the rest.config file, change the value for the Impersonate key to false:

    <?xml version="1.0" encoding="utf-8"?>
    
    <Config xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    ...
    ...
    <Impersonate>false</Impersonate>
    </Config>


     If the Impersonate key does not exist, add it by inserting the <Impersonate> element and set the value to 'false' as shown above.

    c) Save the rest.config file.


    7. Add the ArcGIS Web services and REST applications to the newly created application pool. -show me-

    a) Open the Internet Information Services (IIS) Manager from Control Panel > Administrative Tools.

    b) Expand the local computer node, the Web sites node, the Default Web site node, and the ArcGIS node.

    c) In the ArcGIS node, right-click on Services and select Properties. The Properties dialog box opens for Services.

    d) In the Virtual Directory tab, select the 'Application pool' drop-down list and select the application pool created in step 1 of this article.

    e) Click OK to save and close the Properties dialog box.

    f) Repeat steps c) through e) for the REST services using 'REST' instead of 'Services' in step c).

    g) Close the IIS Manager.


    8. Restart the ArcGIS Server Object Manager (SOM) service. -show me-

    a) Open the Services panel from Control Panel > Administrative Tools.

    b) Right-click on the ArcGIS Server Object Manager service and select 'Restart'.

    c) Close the Services window.

  • Below are the instructions for Windows XP:

    1. Back up and open, in Visual Studio or a text editor, the following file: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config. Locate the <processModel> section shown below (found below the element: <section name="processModel"...>). Add or modify the userName and password attributes inside the processModel element as follows:


    <system.web>
    <processModel userName="MyArcGISServer\ArcGISWebServices" password="MyPassword"/>
    </system.web>


    Save the machine.config file.

    2. Grant the ArcGIS Web services account permissions to the IIS metabase.

    If the Microsoft .NET Framework SDK is installed on the machine, follow these instructions: -show me-

    a) Open a .NET command prompt with Start > (All) Programs > Microsoft .NET Framework SDK v2.0 > SDK Command Prompt.

    b) Type the following command at the prompt, substituting the ArcGIS Web services account name as appropriate:

    aspnet_regiis -ga ArcGISWebServices

    c) Close the .NET command prompt by typing 'exit' and pressing the Enter key.

    If the Microsoft .NET Framework SDK is not installed, these instructions apply: -show me-

    a) Run a 'cmd' window by typing 'cmd' in the 'Open:' text box in the 'Run' window accessed from 'Start > Run...'

    b) Type the following commands at the prompt, substituting the ArcGIS Web services account name as appropriate:

    cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727


    aspnet_regiis -ga ArcGISWebServices

    c) Close the command window by typing 'exit' and pressing the Enter key.


    3. Grant Modify permissions to the ArcGIS Web services account for the C:\Windows\Temp directory. -show me-

    a) Open Windows Explorer and navigate to the C:\Windows\Temp directory.

    b) Right-click on C:\Windows\Temp and select Properties.

    c) In the Properties dialog box, click on the Security tab.

    d) In the Security dialog box, click Add... This opens the Select Users dialog box.

    e) In the Select Users dialog box, change the 'From this location', if necessary, to the location of the ArcGIS Web services account, and type the account in the lower box (or browse to it with the Advanced button). Click OK to return to the Properties dialog box.

    f) In the Properties dialog box, make sure the ArcGIS Web services user is highlighted, and in the Allow column, check the Modify box.

    g) Click OK to save and close the Properties dialog box. Windows Explorer may also be closed.


    4. Set the ArcGIS Web services application to not use impersonation. -show me-

    a) Use Visual Studio or a text editor to open the web.config file in the C:\Inetpub\wwwroot\ArcGIS\Servicesfolder (the ArcGIS Services folder may have been installed at a different location).

    b) In the web.config file, change the value for the Impersonate key to false:

    <appSettings>
    
    <add key="ServiceInfoRefreshTimeInSeconds" value="10" />
    <add key="GCInterval" value="10" />
    <add key="Impersonate" value="false" />
    </appSettings>


     If the Impersonate key does not exist, add it by inserting the <add> element and set the key attribute to 'Impersonate' and the value attribute to 'false' as shown above.

    c) Save the web.config file.


    5. Set the ArcGIS REST application to not use impersonation. -show me-

    a) Use Visual Studio or a text editor to open the rest.config file in the C:\Inetput\wwwroot\ArcGIS\REST folder (the ArcGIS REST folder may have been installed at a different location).

    b) In the rest.config file, change the value for the Impersonate key to false:

    <?xml version="1.0" encoding="utf-8"?>
    
    <Config xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    ...
    ...
    <Impersonate>false</Impersonate>
    </Config>


     If the Impersonate key does not exist, add it by inserting the <Impersonate> element and set the value to 'false' as shown above.

    c) Save the rest.config file.


    6. Restart the ArcGIS Server Object Manager (SOM) service. -show me-

    a) Open the Services panel from Control Panel > Administrative Tools.

    b) Right-click on the ArcGIS Server Object Manager service and select 'Restart'.

    c) Close the Services window.

Related Information


Created: 6/15/2009
Last Modified: 11/6/2009

This website's graphical display is now viewable only with W3C standards-compliant browsers, but the content is accessible to all browsers and Internet devices. View our supported browser matrix for more information on our website display.