У меня есть загадка, что я получаю смешанный совет о том, как поступить. Поэтому я хотел бы поставить его в ГИС-SE для некоторых обоснованных ответов.
Сценарий:
Клиент имеет веб-картографическое приложение. Не хочет разбиваться на несколько небольших приложений. Хотя это идет вразрез с современным подходом к картам в Интернете (т. Е. Множеству сфокусированных приложений веб-карт на одной главной веб-карте), я твердо убежден, что для некоторых пользователей попытка реплицировать ГИС-приложение в Интернете хорошо ( иногда )
Клиент кэшировал столько своих слоев базовой карты в отдельные сервисы.
- Клиенту все еще требуются дополнительные 600-700 слоев в сервисе динамических карт ...
- Сервис будет опубликован с отключением всех этих слоев .
- Не ожидается, что пользователи будут включать более 10-40 слоев одновременно.
Я полагаю, ваша первоначальная реакция на это похожа на мою (600+ ?! WTF ?!)
Однако - требование установлено в камне, и почему нет? Их предыдущее приложение ArcIMS имело аналогичную функциональность, так почему этот новый продукт ArcGIS Server не может сделать то же самое? Потенциально пользователи должны иметь возможность перекрестного сравнения и выполнения анализа по всему диапазону уровней, даже если уровни принадлежат другим отделам.
Прежде чем делать выводы, клиент является администратором ArcGIS Server.
Они установили 600 уровней по всем правилам передовой практики: например, диапазоны шкалы в сочетании с запросами определения; аннотация над маркировкой; обобщающие сложные слои в небольших масштабах; публиковать как MSDs; и т.д
Проблема :
Какой подход лучше?
Опубликовать все 600 слоев в одном сервисе динамических карт
Разделите слои на логические группы (гидрология, планирование, экология, коммунальные услуги и т. Д.)
Если вы идете с # 1, и у вас включено несколько сложных слоев. Если вы хотите включить слой простых точек, то ArcGIS Server все равно придется визуализировать все слои, отображаемые заново.
Если вы переходите к # 2, то каждый раз, когда вы делаете запрос, возможно, веб-приложению может потребоваться выполнить несколько запросов GET для ExportMaps от отдельных картографических сервисов (это плохо, или это создает дополнительную нагрузку на ArcGIS Server через # 1 ?)
А затем это приводит к настройке и настройке, чтобы все было как можно быстрее. Мы можем масштабировать серверную часть ArcGIS Server до нескольких хостов и иметь хорошее оборудование для его установки.
Если вы идете с # 1, вы можете выбросить максимальное количество экземпляров, которые AGS может обработать.
Если вы перейдете к # 2, я предполагаю, что вы оцените производительность картографических сервисов (нагрузочное тестирование и посмотрите на время ожидания) и соответственно рассмотрите экземпляры min / max, чтобы убедиться, что нет ни одного сервиса, который является «слабым звеном».
В настоящее время я склоняюсь к подходу № 2, так как моя голова все еще говорит мне, что наличие 600 слоев в одном сервисе - это безумие, но если они все отключены по умолчанию, на самом деле проблем нет.
Хотелось бы услышать ваши мысли. Дайте мне знать, если вам нужна дополнительная информация через комментарии, но не ищите ответы типа «используйте настольное приложение» или «научите их действовать по-другому»
Из обсуждений в комментариях я не упомянул еще одно соображение. Приложение, в котором будет использоваться служба, имеет возможность обеспечения уровня безопасности (на уровне приложения). Поэтому группе пользователей (которая является довольно большой) назначается определенная роль, и эта роль будет иметь доступ ко всем 600 слоям. Другие роли будут ограничены.