Кэширование карт - очень эффективный способ заставить ваши карты и сервисы изображений работать быстрее. При создании кэша карты сервер отрисовывает всю карту на нескольких уровнях масштабирования и сохраняет копии этих изображений. После этого, когда кто-нибудь запрашивает карту, сервер может предоставить эти изображения. Всякий раз, когда сервер получает запрос на карту, он гораздо быстрее возвратит кэшированное изображение, чем заново нарисует карту. Другое преимущество кэширования состоит в том, что высокая детализация изображения не сказывается на времени предоставления информации.
Что происходит во время процесса кэширования?
Кэширование не происходит автоматически. Чтобы создать кэш, сначала нужно разработать карту, а затем предоставить ее для совместного использования. После этого нужно задать некоторые параметры кэша и начать создание листов. Можно создать все листы сразу или разрешить формирование некоторых листов по необходимости, т.е. при первом обращении к ним.
При кэшировании карты вы отрисовываете ее на нескольких заданных уровнях масштабирования, чтобы затем пользователи смогли приближать и отдалять карту. При выборе параметров кэша нужно определить, какие масштабы требуется кэшировать. Если это просто первая проба инструментов кэширования, можно разрешить компьютеру выбрать какие-то масштабы. Однако обычно масштабы заранее подбирают так, чтобы обеспечить качественное отображение карты в каждом из этих масштабов. Следует записать масштабы и использовать их при разработке карт в ArcMap. Когда придет время создавать кэш, нужно указать эти масштабы в настройках инструмента создания кэша.
Есть и другие параметры, которые важно понимать при создании кэша. Дополнительные сведения см. в разделе Доступные свойства кэша карты.
Кэш хранится в директории кэша вашего сервера. При установке ArcGIS for Server директория кэша сервера создается в локальной папке. При добавлении дополнительных ГИС-серверов для поддержки сайта следует настроить общий доступ к директории кэша сервера, для того чтобы она была доступна с других задействованных компьютеров.
Выбираемые масштабы и устанавливаемые значения параметров кэша составляют схему листов. В каждом кэше есть файл схемы листов, который можно импортировать при создании новых кэшей, чтобы все кэши использовали одни и те же размеры листов и масштабы. Это как правило помогает поднять производительность веб-приложений, содержащих более одного кэшированного сервиса. Дополнительно можно выбрать именно ту схему листов, которая используется в ArcGIS Online, Bing Maps и Google Maps. Это позволит производить наложение ваших листов кэша на листы этих картографических онлайн-сервисов.
Можно ли кэшировать все карты?
Кэш карты представляет собой снимок карты в какой-то момент времени. Поэтому кэш прекрасно работает для таких карт, которые нечасто меняются. К таким случаям относятся карты общего назначения, карты данных аэрофотосъемки и топокарты.
Если даже данные изменяются, все равно можно использовать кэширование, периодически обновляя кэш с помощью соответствующих инструментов. Также настраивается и график автоматического запуска таких обновлений. Чтобы понять - можно ли кэшировать карту, которая часто меняется, полезно ответить на такие вопросы:
Насколько актуальной должна быть моя карта?
Если необходимо, чтобы данные на карте были "живыми", если недопустима временная задержка, кэширование неприемлемо. Однако если короткая задержка допустима, и за это временное окно кэш можно обновить, кэширование можно применять.
Насколько велик кэш и насколько широко распространены изменения данных?
Эти два вопроса дополняют друг друга. Большой кэш требует больше времени на создание. Практичней обновлять большой кэш только в случае, если есть возможность изолировать область изменений и обновлений. Если кэш невелик, можно позволить себе быструю перестройку всего кэша.
Если обновления нельзя выполнить за приемлемое время, кэширование для такой карты неудобно.
После решения перечисленных вопросов используйте кэширование в тех случаях, где оно подходит. Повышение производительности, пожалуй, наиболее ценное преимущество, получаемое при создании и обновлении кэша.
Дополнительная информация об обновлении кэша сервера находится в разделе Обновления кэша карты.
Будут ли исходные ГИС-данные доступны после создания пакета листов?
Хотя кэши карты представляют собой изображения данных, вы сможете предоставить доступ к исходным данным картографического сервиса для выполнения задач поиска, идентификации и выполнении запросов. Эти инструменты получают с сервера географические положения объектов и возвращают результаты. Приложение выводит поверх кэшированного изображения результаты в формате исходного графического слоя.
Как начать кэширование?
Для начала кэширования необходимо опубликовать картографический сервис или сервис изображений. В процессе публикации выполняется настройка свойств в диалоговом окне Редактор сервисов. Здесь можно определить масштабы и экстент кэша. Выполните действия, описанные в разделе Как опубликовать сервис, чтобы узнать, как открыть Редактор сервисов.
Вы можете создать листы при публикации сервиса (что подходит для небольшого кэша) или сформировать кэш самостоятельно после публикации (подходит для большого кэша, когда вы хотите географически ограничить кэш, формируемый для больших масштабов). Если вы создаете кэш самостоятельно, используйте инструмент геообработки Управление листами кэша картографического сервиса из набора инструментов Серверные инструменты.
Компоненты программного обеспечения, необходимые для создания и поддержки кэша карт
Ниже приведен обзор важных компонентов программного обеспечения, о которых нужно знать при создании и управлении кэшами карт.
Закладка Кэширование
На закладке Кэширование в диалоговом окне Редактор сервиса можно указать, что сервис должен использовать кэш, а затем сконфигурировать необходимые настройки, например, схему листов. Во вложенной закладке Дополнительные настройки можно выбрать дополнительные опции, например, формат изображения и необходимость конфигурирования кэширования по запросу.
Эта закладка доступна в окне Каталог в ArcMap при публикации сервиса или при отображении свойств сервиса.
Рекомендации по использованию закладки Кэширование находятся в разделе Доступные свойства кэша карты.
Инструмент Создать схему листов кэша картографического сервиса
Инструмент Создать схему листов кэша картографического сервиса позволяет создавать схему листов для карты, которая включает масштабы для кэширования, систему координат кэша и другие крайне важные свойства. В итоге инструмент создает файл схемы листов в формате XML. При создании нового кэша можно указать файл схемы листов, чтобы загрузить эти свойства.
Рекомендуется создавать схему листов с помощью этого инструмента и использовать ее для множества кэшей внутри организации.
Инструмент Управление листами кэша картографического сервера
Средство Управление листами кэша картографического сервера позволяет создавать, изменять и удалять листы в существующем кэше. Открыть этот инструмент можно, щелкнув правой кнопкой мыши на дереве каталога и выбрав Управление кэшем > Управление листами.
Так как Управление листами кэша картографического сервера является инструментом геообработки, его можно использовать в скрипте подобно любому другому инструменту для помощи при обновлении кэша на регулярной основе.
Директория кэша
Директория кэша ArcGIS Server – это папка на диске, в которой хранятся листы кэша.
Можно открыть директорию кэша для проверки листов кэша и файла схемы листов conf.xml. Директория кэша также может содержать статус файловой базы геоданных.gdb, который содержит информацию о том, какие листы были построены.
На рисунке ниже показан полистный формат кэша в Windows Explorer, где каждый лист хранится в отдельном файле. В компактном формате кэша используются большие файлы, называемые пакетами, которые хранят несколько листов.
Более подробно о директории кэша сервера см. Доступные свойства кэша карты.