Skip To Content

Обновление кэша картографического сервиса

При создании кэша карты необходимо зафиксировать состояние вашей карты на момент создания кэша. Если вы обновляете, редактируете или добавляете данные, вам необходимо обновить кэш соответствующим образом.

Обновить кэш

Обновление кэша приводит к повторному созданию некоторых или всех листов кэша. Кэш можно обновлять, используя инструмент Управление листами кэша сервера карт. В диалоговом окне этого инструмента установите для параметра Режим обновления значение Повторно создать все листы.

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

Если известно, что объекты расположены только в одном наборе данных или одной географической области, можно задать в качестве значения для свойства Область интереса путь к классу пространственных объектов или графическому объекту, который рисуется в ArcMap. С такой опцией инструмент пересоздает только те листы, которые покрывают область интереса. Это хорошо подходит при редактировании полигональных данных. Например, если кэш покрывает всю территорию США, и нужно изменить только границы национального парка, можно задать в качестве области интереса класс пространственных объектов национального парка. Повторно создаются только листы национального парка.

Если ваши редакторы постоянно обновляют данные, можно запустить инструмент Управление листами кэша картографического сервиса автоматически через определенные промежутки времени, с помощью скрипта. Более подробную информацию и примеры автоматизации обновлений кэша см. в Автоматизация создания и обновления кэша в геообработке.

Добавить новые листы или недостающие листы в кэш

Если нужно завершить частично созданный кэш или выполнить проверку его качества, следует запустить Управление листами кэша картографического сервера с параметром Режим обновления, установленным в состояние Заново создать пустые листы. Эта установка проверяет папки кэша и строит листы, которых не хватало. Как и в случае других режимов обновления, можно установить прямоугольный экстент или класс пространственных объектов в качестве границы, внутри которой создаются пустые листы. На рисунке ниже все листы, обведенные синим, будут созданы в режиме Заново создать пустые листы.

Иллюстрация того, какие листы будут созданы заново с использованием опции Заново создать пустые листы

Помните о том, что режим Заново создать пустые листы может потребовать много времени для выполнения, поскольку каждый лист должен быть проверен.

Удалить листы

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

  • Чтобы удалить определенную часть листов, запустите инструмент Управление листами кэша сервера карт с параметром Режим обновления установленным в состояние Удаление листов. Перед запуском этого инструмента настройте параметр Экстент обновления на область, которую необходимо удалить. Либо можно указать класс пространственных объектов, чтобы выборочно указать, какие листы нужно ужалить из кэша.
  • Чтобы удалить весь кэш, запустите инструмент Управление листами кэша сервера карт, который удалит все листы и папки, связанные с кэшем. Перед запуском этого инструмента убедитесь, что установлено максимальное количество экземпляров сервиса геообработки CacheTools не менее 3.
Подсказка:

Чтобы удалить все листы, но сохранить структуру каталога, запустите инструмент Управление листами кэша сервера карт с параметром Режим обновления установленным в состояние Удаление листов. Перед запуском этого инструмента убедитесь, что параметр Экстент обновления настроен на полный экстент карты.

Изменение масштабов в кэше

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

Очистка локального кэша на стороне клиента

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

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

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

Выделение ресурсов сервера для обновления

Обновление кэша расходует ресурсы сервера, т.к. серверу при обновлении необходимо постоянно отрисовывать листы карт. Неразумно было бы позволить рабочему серверу заниматься только созданием листов карт, когда клиенты ждут от него выполнения их запросов. Наиболее масштабируемое решение здесь – выполнять обновления на промежуточном сервере, а затем уже копировать обновленные листы на рабочий сервер.

Если применение промежуточного сервера невозможно, следующая доступная опция – выполнять обновления во время периодов с низким трафиком, например, по ночам или в выходные. Если все же расходование всех процессорных ресурсов на обновления нежелательно, можно уменьшить разрешенное количество экземпляров сервиса геообработки CachingTools либо на уровне сервиса (задается в Service Editor), либо на уровне заданий (задается при запуске инструментов). Последняя опция – предписать сервису геообработки CachingTools работать в собственном кластере, отдельном от картографического сервиса. Таким образом гарантируется, что CachingTools не будет использовать ресурсов машины, на которой работает картографический сервис.

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

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