Чтобы сделать карту доступной через веб, сперва необходимо создать ее в ArcGIS Desktop, а затем опубликовать. Если вы используете ArcMap, то карта публикуется на ArcGIS Server в виде картографического сервиса. Если же вы используете ArcGIS Pro, то можно опубликовать ее в виде веб-карты на ваш портал ArcGIS Enterprise, с поддержкой картографического сервиса на интегрированном сайте ArcGIS Server.
Для использования многих функций картографических сервисов требуется подготовка на этапе создания. Необходимо учитывать следующее при создании карты, которую планируется опубликовать на вашем сайте .
Общие подсказки
Следующие подсказки важны для всех документов карты, которые будут опубликованы на сайте ArcGIS Server:
- Избегайте символов, отличных от букв и цифр (за исключением пробелов), в именах фреймов данных и слоев. Когда вы публикуете сервис, имена фреймов данных и слоев иногда используются в URL-адресах, именах кэшированных папок и в параметрах запросов к веб-сервисам. Символы, не являющиеся алфавитно-цифровыми, в этих случаях могут быть интерпретированы неверно. Будьте особенно внимательны при публикации сервиса с использованием спецификаций OGC. Например, изучите раздел Доступные свойства WMS-сервиса, чтобы получить список символов, которые нельзя использовать с сервисами WMS.
- Удаление конфиденциальной информации из свойств документов. ArcGIS Server содержит Services Directory, позволяющий пользователям просматривать ресурсы сервера и получать метаданные о сервисах. Даже если вы планируете предоставить общий доступ к сервисам через Services Directory (конфигурация по умолчанию), в документе карты могут быть конфиденциальные сведения, которые вы хотите скрыть. Чтобы узнать, какая информация может быть доступна, откройте документ карты в ArcMap и выберите команды Файл > Свойства документа карты в главном меню. При публикации карты вы можете удалить все имена авторов, комментарии и другую информацию, которая не должна быть видна в редакторе сервисов. Измените информацию в соответствии с назначением и целевой аудиторией картографического сервиса.
- Удаление слоев картографического сервиса из документа карты. Публикация документа карты с интегрированным слоем сервиса не допускается.
- Явно установите фон фрейма данных вместо того, чтобы оставлять для фона по умолчанию значение NULL. Картографический сервис будет воспринимать фоновый цвет как прозрачный, так что избегайте фона где бы то ни было на карте. Чтобы белые области на карте не становились прозрачными, вы можете установить фоновый цвет, очень близкий к белому (например RGB 254, 255, 255).
Можно установить фоновый цвет на закладке Фрейм в диалоговом окне Свойства фрейма данных.
Настройте документ карты для сохранения идентификаторов слоя и таблицы
В предыдущих версиях ArcGIS Server ID слоя и таблицы картографических сервисов и сервисов объектов не сохранялись после изменения исходного документа карты. Это требовало обновления клиентских приложений, использующих слои и таблицы, и выбора обновленных ID слоя и таблицы. Чтобы предотвратить обновление клиентских приложений, рекомендуем вам настроить документ карты для сохранения идентификаторов слоев и таблиц, как показано ниже.
- Откройте исходный документ карты (MXD) в ArcMap.
- Щелкните правой кнопкой название нужного фрейма данных и выберите Свойства.
- В диалоговом окне Свойства фрейма данных щелкните Общие и включите опцию Разрешить присвоение уникальных идентификаторов для публикации картографических сервисов.
- Щелкните OK.
ArcMap автоматически присваивает последовательные значения идентификаторов каждому слою и таблице фрейма данных.
- Кроме того, можно выбрать присвоение пользовательских ID слоям и таблицам карты.
- Щелкните правой кнопкой слой или таблицу, для которых вы хотите присвоить пользовательский идентификатор, и выберите Свойства.
- В диалоговом окне Свойства слоя щелкните Общие и присвойте целочисленное значение в поле ID слоя.
- Щелкните OK.
- Повторите перечисленные выше действия для каждого слоя или таблицы.
- Опубликуйте документ карты или перезапишите имеющийся сервис.
Идентификаторы слоев теперь сохранятся после публикации. Вам больше не требуется менять клиентские приложения при изменении исходного документа карты.
Кэширование карты для улучшения производительности
Если карта содержит данные, которые вряд ли будут изменяться, следует рассмотреть возможность кэширования карты для улучшения производительности. При кэшировании карты вы создаете набор предварительно отрисованных изображений карты на определенных уровнях масштаба. Фактическое кэширование происходит после публикации карты в качестве картографического сервиса. Но если вы знаете, что будете кэшировать карту, это влияет на процесс ее создания. Вы хотите создать карту так, чтобы она выглядела хорошо на всех масштабах, которые вы будете кэшировать. Можно использовать любые картографические инструменты без влияния на производительность, так как кэшированные листы – это всего лишь изображения данных, а фактические механизмы отрисовки и надписывания после создания кэша не используются.
Если вы не можете кэшировать карту, механизмы отрисовки и надписывания влияют на производительность картографического сервиса. Для получения более подробной информации см. раздел Что такое кэширование карты.
Советы по работе с некэшированными картами
Кэш карты следует создавать при любой возможности. Однако при наличии больших объемов данных, которые часто изменяется, создание и обслуживание кэша может оказаться невозможным. В этом случае можно воспользоваться подсказками, представленными ниже, для повышения производительности карты. В процессе публикации документа карты вы можете проанализировать карту с помощью редактора сервисов. Это позволяет быстро определить способы повышения производительности документа карты.
Установите визуализацию слоев данных в зависимости от масштаба: используйте визуализацию в зависимости от масштаба, чтобы убедиться, что ненужные слои не отображаются при изменении масштаба карты. Детализированные слои могут лучше подходить только при более крупном масштабе карты.
Удалите неиспользуемые слои и фреймы данных: посмотрите на карту в виде данных и в виде компоновки и убедитесь, что в документе карты нет фреймов данных и слоев, никак не связанных с целью карты. Например, если вид компоновки страницы содержит фреймы данных, которые не будут видны в любом приложении, использующем сервис, удалите их.
Используйте запросы определений соответствующим образом: запрос определения может действовать как фильтр для ограничения объема данных на карте, тем самым ускоряя ее отображение. Например, в случает, когда вы создаете карту штата, а класс пространственных объектов содержит данные на всю страну, можно применить определяющий запрос для отображения только тех объектов, которые попадают в пределы границ штата. Помните, что сложные запросы могут отрицательно повлиять на производительность.
Упростите символы слоя: отображение сложных символов может занять намного больше времени, чем отображение простых символов. Используйте простые линейные символы и символы заливки, избегая символов со множеством слоев, сложными шаблонами, штриховыми линиями и контурами. Символы дорожных знаков также могут замедлять отображение.
При использовании символа заполнения рисунком можно улучшить производительность за счет применения файла EMF вместо BMP.
Простой способ упростить символы на карте – использовать стиль ESRI_Optimized. Он содержит линейные символы и символы заливки, которые были созданы для того, чтобы не снижать производительность системы при отрисовке сложных символов, и в тоже время не снижать качество визуального отображения символов и знаков, по сравнению с их эквивалентами из стиля Esri. Сведения о работе с этим стилем см. в разделе справки ArcGIS Организация стиля.
При создании кэшированного картографического сервиса упрощение карты не влияет на скорость отображенной завершенной карты. Это влияет только на скорость создания кэша. Если кэш и так не занимает много времени, можно не беспокоиться об упрощении символов.
Используйте аннотации вместо надписей: так как надписи требуют от компьютера расчета их размещения, в общем случае слой аннотации будет работать быстрее.
Упростите надписи: если карта содержит надписи, используйте веса в конфликтах надписей и объектов с осторожностью. Гало, смещения и другие эффекты надписей также уменьшают производительность.
Настройте визуализацию надписей в зависимости от масштаба: при приближении (увеличении масштаба) карты необходимо прорисовывать большее количество надписей, что занимает время. Изучите свою карту и решите, нужно ли отображать некоторые из надписей в меньших масштабах.
Используйте одну систему координат для данных и карт: если у исходных данных и документа карты разные системы координат, данные должны проецироваться в реальном времени, что замедляет производительность. Для достижения оптимальной производительности используйте одну систему координат для данных и документа карты. Если это невозможно, убедитесь, что соответствующие географические преобразования применены к слоям, которые необходимо проецировать в реальном времени.
Измените время, в течение которого браузер может использовать ответ из кэша – когда карта просматривается в веб-браузере, изображение карты, полученное с сервера, кэшируется браузером и повторно используется в течение некоторого периода времени. В зависимости от использования сервиса карт и связанных с ним данных в приложении, может потребоваться изменить время использования кэшированного ответа. Дополнительную информацию см. в разделе Улучшение производительности при отображение картографического сервиса.
Сетевой анализ
Если вы собираетесь использовать эту карту для сетевого анализа на сервере, вам потребуется включить слоя сетевого анализа, ссылающийся на набор сетевых данных. При публикации картографического сервиса вы можете включить функцию Сетевой анализ. При этом будет создан веб-сервис для выполнения задач сетевого анализа в вашей карте.