启用响应缓存
响应缓存是一种后端服务器缓存机制,可以提升要素图层的性能和可扩展性。 支持响应缓存的客户端可以请求标准缩放级别的标准化数据范围。 由于这些标准化请求在请求相同数据的不同客户端之间相同,因此多个客户端可以缓存并重用这些要素。
借助响应缓存,客户端能够更快地接收响应,而无需数据库查询的开销。 由此使得响应缓存对于需要扩展处理大量相似请求的图层尤为有用。 响应缓存最适合极少发生变化的数据。
以下任一用户均可为图层配置响应缓存:
图层项的所有者
该图层项所共享到的共享更新组的成员
拥有一组用于管理成员所拥有内容管理权限的成员
使用响应缓存的先决条件
ArcGIS Enterprise 中的图层默认不启用响应缓存,且响应缓存并非适用于所有情况。 要使用本主题中的工作流为图层启用响应缓存,必须满足以下前提条件:
该图层项必须是支持响应缓存的以下类型之一:
要素图层
托管要素图层
地图图像图层
托管要素图层视图
该图层不能引用版本化数据。
该图层必须允许响应缓存。
该图层必须使用要素数据。 栅格数据无法用于响应缓存。
如果图层引用了已注册数据,则数据集必须追踪最后编辑时间。 如有必要,请在图层的数据集上运行启用最后编辑时间工具。
必须为托管服务器配置对象存储。
必须由支持响应缓存的客户端发起对该图层的请求。 这些客户端主要包括 ArcGIS Pro、使用 ArcGIS Maps SDK for JavaScript 创建的 Web 应用程序(如 Map Viewer),以及使用 ArcGIS Maps SDK 构建的原生应用程序。
为图层配置响应缓存
完成以下步骤以允许响应缓存:
以具有更新该图层项权限的成员身份登录您的组织。
打开您想要更新的图层项的项页面,然后单击设置选项卡。
在响应缓存下,单击管理图层。
根据您的需求,使用切换按钮来允许或禁止每个图层的响应缓存。
不符合要求的图层将禁用其切换按钮,并显示一条警告,说明该图层无法使用响应缓存的原因。
单击确定。
在设置选项卡上,单击保存以重新启动服务并应用响应缓存设置。
注:
对于发布到非托管服务器的联合服务器站点的服务中的图层,必须使用 REST API 来启用响应缓存。
缓存失效
缓存响应仅在有效期内可用。 默认情况下,缓存响应在 1 天后过期。 管理员可以使用 REST API 指定不同的过期时间。 有关为托管要素图层和托管要素图层视图配置过期时间的信息,请参阅ArcGIS Enterprise 中托管要素服务图层的响应缓存。 有关为引用已注册数据的要素和地图服务图层配置过期时间的信息,请参阅编辑 - 服务。
如果对象存储使用云服务来存储数据,过期的缓存响应将被自动删除。 如果对象存储是使用 ArcGIS Data Store 配置的,请定期对该对象存储运行 maintaindatastore 实用程序,从而移除已过期的缓存响应。
当对图层的数据进行编辑时,缓存响应也将失效,以防止客户端收到包含过时数据的响应。 因编辑而失效的缓存响应将在下一次执行查询时,被新的缓存响应所替换。
注:
对于引用已注册数据的图层,正确的缓存失效依赖于地理数据库设置 lastEditTime。 在 ArcGIS 软件之外执行的编辑操作(例如直接对数据库执行的 SQL 语句)不会更新 lastEditTime。 这些编辑操作可能导致缓存失效无法如预期般工作。