Критерии кэша объектов

Для векторных веб-слоев кэш объектов используется для улучшения производительности и решения типовых задач путем хранения объектов во временной папке. Кэш управляется автоматически, и поскольку объекты кэшируются, количество запросов, необходимых для извлечения данных, сокращается, как и время на отрисовку. Это может быть удобно при работе с большими или сложными наборами данных, в заданном экстенте карты или когда большое количество пользователей используют один и тот же сервис. Это также снижает нагрузку на сервер, поскольку уменьшает количество запросов к сервису.

По умолчанию кэш объектов заполняется приложением автоматически, это рекомендуемая настройка. Кэш заполняется каждый раз, когда завершена отрисовка карты и выполнены следующие условия:

  • Слой виден на панели Содержание.
  • Слой отображается на основе диапазона видимых масштабов.
  • Итоговое число отображаемых объектов в 5 раз меньше, чем пороговое значение числа строк в слое сервиса.
  • Опция кэширования в диалоговом окне свойств слоя задана как Очистить кэш при завершении сеанса.
  • Оценочное количество объектов в видимом экстенте в 5 раз меньше, чем пороговое значение числа строк, если для него заданы фильтры.

Чтобы избежать перегрузки ресурсов сервера длительными запросами при автоматическом кэшировании объектов, воспользуйтесь 15-секундным тайм-аутом при заполнении кэша объектов для каждого слоя. Если для заполнения кэша слоя требуется более 15 секунд, запрос отменяется, слой помечается как медленный, и автоматическое кэширование не пытается повторно заполнить кэш в текущем или меньшем масштабе. При масштабах крупнее 1/4 медленного масштаба предпринимается попытка автоматического заполнения слоя.

Если кэш объектов не заполняется из-за того, что пять перечисленных выше критериев не удовлетворены или имел место 15-секундный тайм-аут, вы можете управлять кэшем вручную, чтобы воспользоваться преимуществами производительности, обеспечиваемыми кэшем.

Внимание:

Не рекомендуется кэшировать слои, опубликованные с определяющими запросами, если вы собираетесь их редактировать в ArcGIS AllSource. Это связано с тем, что определяющие запросы на основе сервиса недоступны в ArcGIS AllSource. При использовании этих слоев отредактированные или созданные объекты, которые не соответствуют определяющему запросу, могут по-прежнему отображаться в ArcGIS AllSource, даже если они не будут видны в других приложениях. Эти объекты могут исчезнуть во время сеанса и исчезнут при следующем открытии ArcGIS AllSource.

Дополнительная информация по пороговому числу строк, оцененному числу строк и составным слоям подтипов также будет использована для определения, заполнять ли кэш автоматически.

Пороговое число строк

Пороговое число строк используется для определения, заполнять ли кэш объектов. Пороговое число строк устанавливается на 2000, или по значению maxRecordCount слоя сервиса объектов, в зависимости от того, что будет ниже.

Оцененное число строк

Если оцененное число строк поддерживается и у слоя есть фильтры, ArcGIS AllSource будет использовать оцененное число строк, и 5 критериев, как описано выше для определения, заполнять ли кэш объектов. Если у слоя нет фильтров, оцененное число строк не будет использовано, и ArcGIS AllSource будет использовать первые четыре критерия, описанные выше, чтобы определитть, необходимо ли заполнять кэш объектов.

Если предполагаемое число строк для всего слоя сервиса объектов в 5 раз меньше, чем пороговое значение числа строк, кэш объектов будет заполняться в режиме мгновенного снимка. Выполняется один запрос, и кэш объектов заполняется всеми объектами сервиса. В режиме мгновенного снимка пространственные и непространственные запросы используют кэш объектов.

Для слоев сервисов объектов, которые не поддерживаются оцененное число строк, кэш не заполняется, если в слоях присутствуют фильтры.

Примечание:

Чтобы определить, поддерживает ли сервисы объектов оцененное число строк, перейдите к ресурсам JSON слоя и посмотрите параметр infoInEstimates. Если count находится в пределах этого массива, ArcGIS AllSource получит оценку числа строк. Если массив отсутствует или не содержит count, расчетное количество строк не будет получено ArcGIS AllSource.

Подробнее об этом параметре см. в разделе Получение оценок.

Составные слои подтипа

Случаи, в которых составные слои подтипа могут или не могут использоваться как фильтры.

Составные слои подтипа используются как фильтры, если хотя бы один подтип видимый. Для этого сценария оцененное число строк будет использоваться для заполнения кэша объктов, если поддерживается.

Составные слои подтипа не используются как фильтры, если все составные слои подтипа видимые. Для этого сценария сумма исходных количеств всех видимых подтипов составных слоев будет использована для определения, заполнять ли кэш объектов.

Составные слои подтипа не используются как фильтры, если не ни одного видимого составного слоя подтипа. Для этого сценария составные слои подтипа будут считаться не видимыми, и кэш объектов не будет заполнен для этих слоев.