An ArcGIS Server site consists of several components that can optionally be distributed across multiple machines to increase computing power. Each component in the site plays a specific role in the process of managing the resources that are allocated to a set of services.
The components of an ArcGIS Server site can be summarized as follows:
- Web server—Hosts web applications and provides optional security and load balancing benefits to ArcGIS Server.
- Web Adaptor—Integrates ArcGIS Server with your enterprise web server, forwarding incoming requests to your various GIS server machines.
- GIS server—Does the work to satisfy requests issued to the GIS web services. A GIS server can draw maps, run tools, serve imagery, synchronize databases, project geometry, search for data, and perform many other operations offered by ArcGIS.
This topic summarizes each of the components and provides links to additional information to help you effectively administer your ArcGIS Server site.
The web server
The web server hosts web applications and provides optional security and load balancing benefits to the ArcGIS Server site. ArcGIS for Server is compatible with many popular web servers, including Internet Information Services (IIS), WebSphere, and WebLogic.
The GIS server component exposes your services through HTTP without requiring you to have a separate, dedicated web server such as IIS. However, if you want to harness some of the native security benefits of the web server (such as authentication options), or if you want to host web applications, you can choose to include a web server in your deployment.
ArcGIS Web Adaptor
ArcGIS Web Adaptor is fundamentally a web application that forwards requests from your web server to your GIS server. ArcGIS Web Adaptor keeps track of which machines have been added and removed from your site and forwards traffic to them appropriately. Using ArcGIS Web Adaptor allows you to set your own name and port for your site, instead of using the default port 6080 and the default site name arcgis. ArcGIS Web Adaptor also allows you to leverage the native capabilities of your web server for security, and can block outside connections to ArcGIS Server Manager and the ArcGIS Server Administrator Directory.
When a web service request is received, ArcGIS Web Adaptor forwards the request to one of the GIS server machines. The GIS server machines then communicate with each other to determine which specific machine is available and should be assigned to work on each request. If ArcGIS Web Adaptor determines a GIS server is unavailable, it stops forwarding requests to that server.
Other web gateway options
The Web Adaptor is not the only way to configure a web gateway, or entry point, to your site. Other web gateway technologies can include physical HTTP load balancer and network router devices, or third-party software designed for load balancing purposes. In the Amazon EC2 environment, the Amazon Elastic Load Balancer (ELB) can act as a web gateway. If you already have existing technology in your organization that plays the role of a web gateway, it can be adapted to work with ArcGIS Server under most circumstances.
Although the web gateway and web server often work together, the presence of a web gateway in the deployment does not necessitate the presence of a web server. For example, if your web gateway is a physical router, it can send requests directly to the GIS server without needing a web server.
GIS server
Machines in your site that have ArcGIS for Server installed can be thought of as GIS servers. Incoming web service requests for maps, address coordinates, geoprocessing jobs, and so on, are each assigned to an available GIS server within the site. That GIS server then does the work of drawing the map, finding the address coordinate, running the geoprocessing tool, and so on, and returns the result to the client. Essentially, GIS servers are the work centers of your site.
The GIS server exposes your services through HTTP. You can supplement this with a dedicated web server running the Web Adaptor for additional functionality.
You may find it necessary to configure your ArcGIS Server site to use multiple GIS servers to protect against downtime if one of your GIS servers becomes unavailable. When a GIS server goes offline (whether planned or unplanned), the Web Adaptor can continue to distribute incoming requests to the remaining GIS servers in the site. Additionally, the GIS servers can detect when other GIS servers have been removed and added, creating a pluggable architecture that works well in cloud environments.
The above components of an ArcGIS Server site can reside on the same physical machine for development and testing purposes, or for supporting small deployments. See Deployment scenarios to learn about recommended architectures for small and large sites.
GIS server clusters
GIS servers can be organized in groups called clusters. Each cluster runs a dedicated subset of services, as configured by the site administrator. For example, you could create one cluster to run all your map services, and another cluster of servers (perhaps with higher processing power) to run your geoprocessing services.
To learn more about clusters, see the topic About GIS server clusters.
The configuration store
An ArcGIS Server site has a special folder designated as the configuration store, which contains all the properties of the site and its services. You specify the location for the configuration store when you create the site. In a multiple-machine site, the GIS servers access the configuration store through a shared network directory. In a site with multiple GIS servers, it's recommended that you keep the configuration store on its own fault-tolerant file server (separate from the GIS server machines).
Server directories
A server directory represents a physical directory on the network that is specially designated for an ArcGIS Server site to store and write certain kinds of information. There are server directories for storing caches, output, jobs, system files, uploads, input data, KML, and indexes. A set of server directories is created for you at a location you specify when you create the site. In a multiple-machine site, this needs to be a shared network directory.
For detailed descriptions of each server directory, see the topic About server directories.
Processes started by the GIS server
You can expect to see the following operating system processes on any GIS server machine that is started and participating in a site.
- One ArcGISServer.exe process
- One ArcSOC.exe process for each running service instance. An exception is geoprocessing services, which have two ArcSOC.exe processes per running instance.
- One rmid.exe process
- Two javaw.exe processes. These provide basic application server functionality and the ability to host web services.
- Two conhost.exe processes and one cmd.exe process. These are supplementary processes started by Windows to provide console services to ArcGIS Server processes.
You can tell that a javaw.exe process is associated with ArcGIS Server by looking at the Command Line column in Windows Task Manager. If the path includes the ArcGIS installation directory, you know it's a process associated with ArcGIS Server. You can derive further information about each process by examining its full command.
The Windows service ArcGIS Server represents the GIS server itself. Stopping this service effectively stops the GIS server on the machine and shuts down any running GIS service instances.