This article was originally published on March 11, 2020 by Kelly Gerrow-Wilcox, and has been updated.
ArcGIS Online is a recurring feature in newsfeeds, media sites, and agencies supporting public health and emergency response across the globe. Many authoritative sources and community members share information about breaking news and major events through dashboards, apps and maps. These applications have provided public information to hundreds of millions, or even billions of people worldwide. Individual dashboards have clocked over 1.5 million views per hour, totaling over 500 million views. ArcGIS Online is built on a reliable, scalable infrastructure that supports a massive amount of web traffic.
This article is a quick outline of best practices designed to ensure the applications you build for a large audience are using the ArcGIS Online components essential for optimal scalability. Links to more detailed resources are listed at the bottom of this article.
Checklist for scalable web apps hosted on ArcGIS Online
- Use Hosted Feature Layer Views in your public applications to make use of the Swap Source feature, ensuring smooth transitions during major data updates.
- Review the ArcGIS Dashboards scalability best practices.
- For all hosted feature layers and hosted feature layer views:
- Ensure editing is disabled.
- Set the cache control with the longest duration you can to conserve your organization’s feature data store resources. By default, this is set to 30 seconds, but if you edit less frequently, set the cache control to a longer setting.
- Do not use dynamic or relative time queries and filters, such as: current time; in the last five minutes; today; yesterday; tomorrow. Instead, use time references stored as attributes in the data.
Note: The following Web AppBuilder widgets use dynamic extent and are not recommended for high volume publicly shared apps:Infographic widget; Query widget; Info Summary widget
These best practices optimize scalability for your publicly shared items by ensuring all available caching mechanisms are being used, thereby conserving your organization’s underlying infrastructure.
Without these best practices applied, your organization’s standard feature data store and even Premium Feature Data Store may need to put some requests into a queue. This will result in end users experiencing delayed responses, which if sustained, may cause error responses. If this occurs, logging an Esri Technical Support case and applying these best practices to the publicly shared items will get you back on the right path.
Beyond scalability, consider the following options to optimize display performance:
- Enable the Optimize Layer Drawing option on the layer item settings page to make quantization and query faster.
- Create an attribute index for any fields being used as a filter. Though a small amount of additional feature data storage is required to store an attribute index, it will increase the speed of your attribute-driven filters. If your organization would prefer a fixed cost for feature data storage instead of using credits, consider Premium Feature Data Store.
A note on cacheable queries
Hosted feature layers in ArcGIS Online power maps and apps that can be used for sharing information publicly. The applications use feature layer queries to request data that is then visualized (features are drawn and power pop-ups). Often, the same information is requested and displayed by viewers of the application; in this case, response caching can be used to efficiently use the response from a query repeatedly until the data updates. As ArcGIS Online is built to show geospatial information, feature tiles are used to ensure that geometry information can also take advantage of response caching, even when extents and scales change as users interact with the map.
By following the best practices outlined in this article, you will ensures that your app sends cacheable queries that can be stored and used by the content delivery network (CDN). This results in an app that is scalable and efficient anywhere in the world. For more information, see Scalable Hosted Feature Layers in ArcGIS Online: Tile Queries and Response Caching.
Learn more
This is the second article in a 3-part series about ArcGIS Online data management best practices to support scalable public-facing web maps and apps. If you missed the first article, Tracking your ArcGIS Online Feature Data Store Key Health Indicators, please read it, and then check out the third article in the series, Scalable Hosted Feature Layers in ArcGIS Online: Tile Queries and Response Caching.
Article Discussion: