Best Practices for High Demand/Viral Apps

News Flash! ArcGIS Online users make great Apps that are used to inform and engage the public about important and interesting geospatial topics. Apps hosted on ArcGIS Online are easily shareable and can receive hundreds of thousands of views in a short amount of time. ArcGIS Online scales to meet the demand of your application, making it easy to create and share applications that may receive a high demand of requests (1000s of request per second) from your users.

Consider a natural disaster, where apps are created to inform the public of evacuation zones and shelters. These apps may receive hundreds of thousands of views in a matter of days, receiving a high amount of web traffic. In order to ensure that these apps are performing at their best under high demand, consider these best practices for layer management, so ArcGIS Online can handle the rest.

Pick the most appropriate Layer Type for your data and workflow

  • Create a tile service for large complex datasets that don’t need to be updated frequently. Tip: Enable pop ups on your tiled layer and include attribute information.
  • Use a Feature Collection if your data has less than 1,000 features and doesn’t need to be updated by multiple users.
  • Use a Hosted Feature Service that is optimized for high demand for data that will be updated by a group of editors or needs to show a subset of the original dataset.

 Hosted Feature Services Optimized for High Demand

In order to configure a feature service for high demand,  all of the requirements in the side checklist must be configured on the layer that is displayed in your web map and app.

Apps with updating data

Many apps, especially in the emergency management space need to show updating data, requiring the ability to edit and display data in an easily scalable way. The December 2016 release of ArcGIS Online, introduced the ability to create hosted feature layer views. This allowed data owners to create an editable and uneditable view to achieve this requirement. The March 2017 release added the ability to set view definitions, allowing data owners to specify the features and fields displayed in each view.

To configure a feature layer view that is optimized for high demand from a layer that can be edited by a group of editors, follow these steps:

First, publish your primary hosted feature layer which will be your Editable layer.

  1. Name it something that is easy to identify like Shelters_ edit
  2. Ensure that your editing settings are appropriate for who will be updating the data.
  3. Create a web map and app that contains the editable layer.
  4. Share the layer, app and map with a group where editors are members of the group.

After following these steps, the layer will be ready to be edited by only the members in your group.

Next, create a hosted feature layer view that it is optimized for high demand.

  1. Navigate to the Primary layer that you just created and select the Create View button.
  2. Name the layer something that is easy to identify like Shelters_ display
  3. Ensure that this layer meets all of the requirements outlined in the optimized for high demand checklist.
           - Ensure that Editing is disabled on the feature layer view
           - Use  Set View Definition if you need to hide any fields or features instead of using filters
           - Verify that the geometry doesn’t exceed the requirements.
 4. Use the display layer in your web map and create your application.

Lastly, add a thumbnail and descriptive summary text to your item details page so that this information appears in social sharing and ArcGIS Online searches. Then take a step back to your admire great app that is ready to scale to meet the interest and high demand of web traffic that awaits.

This entry was posted in ArcGIS Online and tagged , , , , , , . Bookmark the permalink.

Leave a Reply


  1. keithpower says:

    Is the checklist an all or nothing list? In other words, if I cannot meet the “Less than 8000 points or 250000 vertices” requirement will I still see an improvement in performance?