Сколько слоев должно быть в MapService - каковы компромиссы?

9

При настройке MapServices for ArcGIS мне часто дают mxd, в котором много слоев, и говорят о его публикации.

Должен ли я иметь больше картографических сервисов с меньшим количеством слоев в каждом или меньше картографических сервисов с большим количеством слоев в каждом?

Каковы компромиссы?

Кирк Куйкендалл
источник

Ответы:

5

Картографические услуги довольно дороги. Они требуют, чтобы по крайней мере 1 процесс ArcSOC был всегда запущен и всегда занимал память (60 - 100 МБ / каждый на моем компьютере - не совсем незначительный). В Windows также имеется ограниченная куча рабочего стола, которая может быть проблематичной при запуске большого количества процессов. Я часто видел, как клиенты шли по маршруту «давайте продолжим добавлять картографические сервисы» только для того, чтобы узнать, что они быстро достигли вершины того, что может поддерживать их сервер. Каждому картографическому сервису также потребуются собственные подключения к базе данных, что может быть важно учитывать.

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

Брэндон Коупленд
источник
4

При публикации сервиса всегда полезно учитывать целевую аудиторию и ее цели на карте. Им нужна быстрая карта? Нужна ли им точная карта? Симпатичный? Они хотят убрать вещи с дороги? Собираются ли они писать по всему этому?

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

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

Если маркировка и рендеринг очень важны, то, вероятно, будет лучше работать с меньшим количеством сервисов с большим количеством слоев. Наличие нескольких сервисов, которые отображают свои собственные метки, а затем объединяют их вместе, приведет к большему количеству коллизий меток, чем один сервис с большим количеством слоев, поскольку ArcGIS Server не сможет «планировать», куда каждая метка попадает в разные сервисы.

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

mwalker
источник
2
Я бы добавил безопасность в этот список. Безопасность ArcGIS Server останавливается на уровне обслуживания. Если вам нужна защита на уровне слоев, вам нужно разбить слои на множество картографических сервисов.
Райан Тейлор
0

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

Рамакришна Биллаканти
источник