Workload separation

Workload separation is a design approach focused on the optimal distribution of computing resources. ArcGIS delivers many kinds of capabilities, such as mapping and visualization, analytics, and field mobility. Each of these functionalities impacts compute resources differently. Therefore, allocating resources accordingly will help ensure the system can function optimally by improving system performance and reliability. Within the ArcGIS system, this is commonly achieved using separate ArcGIS Server sites.

Strategies for workload separation

  1. Consider your business workflows to understand SLAs, performance expectations, and how each will impact resources. Then, allocate appropriate, isolated, resources to meet the needs of each workload.
  2. Allocate hardware around core GIS capabilities, as shown in the diagram below.
  3. Direct CPU-intensive service requests to sites that contain machines with faster processors. Direct less intensive requests to machines that are more modest.
  4. Determine acceptable component thresholds and plan for expected load. Anticipate ways to adapt if and when this threshold is exceeded. Monitor the system components to proactively address emerging needs.

Common approaches

Common approaches to workload separation in ArcGIS include:

  • Isolate technology workloads to reduce the risk of high-intensity processes overwhelming other processes
  • Enforce workload separation using dedicated server roles

Isolate technology workloads

One popular implementation of this pattern is to deploy one or more additional ArcGIS Server sites (in addition to the hosting server) to isolate hosting, mapping and visualization, and analytics workloads. This approach is beneficial because it provides assurance that when a large geoprocessing task is run, it won’t interfere with the organization’s map services, which could impact other user’s work.

workload-separation-1.png

In general, workloads that might benefit from this type of isolation are:

  1. Heavyweight analytical or geoprocessing services
  2. Highly used dynamic map services
  3. Basemap and geocoding services: see Location services system
  4. Editing vs read-only services
  5. Mission-critical services that have a higher service level agreement (SLA) and higher availability requirements

Enforce workload separation

In addition to the choices you can make to isolate workloads, ArcGIS also enforces workload separation natively through server roles for their respective functions. These server roles can be joined to an ArcGIS Enterprise base deployment to extend its capabilities. See ArcGIS Enterprise server roles for details.

workload-separation-2.png

Measure success

The key indicators of all system components are identified when measured and monitored consistently. This is critical to ensure your resources are performing at optimal levels. Effective monitoring tools and practices can enable proactive identification of increasing component utilization, which in turn, enables you to proactively identify increased system utilization and make informed choices about how to change or increase the ways your workloads are separated. As a result, your ArcGIS system will continue to operate in a way that is performant and reliable. See IT infrastructure monitoring.

Workload separation, when properly implemented, will enhance system performance, reduce risk, and improve the reliability of ArcGIS. This requires making key decisions in order to balance the cost of additional infrastructure and staff with the accrued costs that include those that are capital and operational when a poorly performing (or unavailable) business-critical application or system negatively impacts the business.

Reduce risk

IT teams are challenged with maximizing performance, reducing risk, and meeting service level agreements (SLAs) for of all their mission-critical enterprise systems. By strategically isolating different IT functions, you can reduce the risk that high-intensity processes will consume resources also needed to support mission-critical applications. Additionally, you reduce the likelihood that an abnormal spike in requests will disrupt service for all users.

You can reduce the risk of service interruption by routing user requests to the appropriate ArcGIS Server sites through load balancers. See Configure a reverse proxy server with ArcGIS Server. This enhances system stability by preventing overloaded machines from affecting other machines, which in turn protects critical tasks from resource contention.

Top