Ile warstw powinno znajdować się w usłudze MapService - jakie są wady?

9

Podczas konfigurowania MapServices dla ArcGIS często otrzymuję plik mxd z wieloma warstwami i polecam go opublikować.

Czy powinienem mieć więcej usług map z mniejszą liczbą warstw w każdej, czy mniej usług mapowych z większą liczbą warstw w każdej?

Jakie są kompromisy?

Kirk Kuykendall
źródło

Odpowiedzi:

5

Usługi map są dość kosztowne. Wymagają co najmniej 1 procesu ArcSOC, aby zawsze działał i zawsze zajmował pamięć (60-100 MB / każdy na moim urządzeniu - nie do końca nieistotny). System Windows ma również ograniczone stosy pulpitu, które mogą być problematyczne przy uruchamianiu wielu procesów. Często widziałem klientów, którzy przechodzili trasę „pozwalajmy dodawać usługi mapowe” tylko po to, aby dowiedzieć się, że szybko osiągnęli szczyt możliwości tego, co ich serwer może obsługiwać. Każda usługa map wymagałaby również własnych połączeń z bazą danych, co może być ważne do rozważenia.

Zakładam, że istnieją również kary za wydajność z dużą liczbą warstw w jednej usłudze. Nie mam żadnych informacji na temat tego, co to jest, ale nie wyobrażam sobie, aby były tak kosztowne jak dodatkowe usługi map.

Brandon Copeland
źródło
4

Publikując usługę, zawsze warto wziąć pod uwagę docelowych odbiorców i ich cele na mapie. Czy potrzebują szybkiej mapy? Czy potrzebują dokładnej mapy? Ładna? Czy chcą zrzucić rzeczy z drogi? Czy zamierzają to wszystko wypisać?

Jeśli Twoje warstwy mają wiele różnych źródeł danych, grupowanie warstw pochodzących z podobnych źródeł danych (dokładnie takich samych lub z tej samej projekcji lub tej samej średniej prędkości) może działać dobrze. Następnie nie czekasz na załadowanie najwolniejszej warstwy, aby uzyskać cały obraz mapy.

Jeśli jest prawdopodobne, że Twoi użytkownicy będą mieli określoną potrzebę biznesową związaną z wieloma warstwami, to możliwość wyłączenia lub wygaszenia usługi jest przydatna. O wiele łatwiej jest narysować na kliencie cały obraz mapy z 50% przezroczystością, niż pozwolić serwerowi na pomalowanie go w ten sposób.

Jeśli etykietowanie i renderowanie są bardzo ważne, prawdopodobnie mniej usług z większą liczbą warstw będzie prawdopodobnie działać lepiej. Posiadanie przez wiele usług renderowania własnych etykiet, a następnie ich łączenie spowoduje więcej kolizji etykiet niż pojedyncza usługa z wieloma warstwami, ponieważ ArcGIS Server nie będzie w stanie „zaplanować”, gdzie każda etykieta trafia do różnych usług.

Podobnie, jeśli masz do czynienia z półprzezroczystymi wielokątami, to posiadanie ich wszystkich w jednej usłudze będzie działało lepiej podczas komponowania obrazów, szczególnie jeśli rysujesz również warstwą fotografii, w której kompresja JPEG pomoże.

mwalker
źródło
2
Dodałbym bezpieczeństwo do tej listy. Bezpieczeństwo ArcGIS Server zatrzymuje się na poziomie usługi. Jeśli potrzebujesz zabezpieczeń na poziomie warstw, musisz podzielić swoje warstwy na wiele usług map.
Ryan Taylor
0

W miarę możliwości zgrupuj fc w podtypy, które zmniejszają obciążenie serwera, a także dają możliwość utrzymania mniejszej liczby fc w usłudze map.

Ramakrishna Billakanti
źródło