Saya memiliki teka-teki bahwa saya mendapatkan saran yang beragam tentang bagaimana caranya. Karenanya saya ingin memasukkannya ke GIS-SE untuk mendapatkan jawaban yang tepat.
Skenario:
Klien memiliki aplikasi pemetaan web. Tidak ingin dipecah menjadi beberapa aplikasi yang lebih kecil. Meskipun hal ini bertentangan dengan pendekatan modern untuk peta di web, (yaitu banyak aplikasi peta web yang difokuskan pada satu peta web utama) saya sangat percaya bahwa bagi beberapa pengguna, mencoba mereplikasi aplikasi GIS di web adalah ok ( kadang-kadang ).
Klien telah meng-cache sebanyak mungkin layer peta dasar ke layanan terpisah.
- Klien masih memerlukan 600-700 lapisan tambahan dalam layanan peta dinamis ...
- Layanan akan dipublikasikan dengan semua lapisan ini dimatikan .
- Tidak diantisipasi bahwa pengguna akan menyalakan lebih dari 10-40 lapisan sekaligus.
Saya membayangkan reaksi awal Anda terhadap ini mirip dengan saya (600+ ?! WTF ?!)
Namun - persyaratan diatur dalam batu dan mengapa tidak? Aplikasi ArcIMS mereka sebelumnya memiliki fungsi yang sama, jadi mengapa produk Server ArcGIS yang lebih baru ini tidak dapat melakukan hal yang sama? Para pengguna berpotensi perlu untuk dapat membandingkan silang dan melakukan analisis pada seluruh jajaran lapisan, bahkan jika lapisan itu milik departemen lain.
Sebelum Anda langsung mengambil kesimpulan, klien adalah admin ArcGIS Server yang telah diberi petunjuk.
Mereka telah mengelola 600 lapisan dengan semua aturan praktik terbaik: misalnya rentang skala dikombinasikan dengan permintaan definisi; anotasi atas pelabelan; generalisasi lapisan kompleks pada skala kecil; mempublikasikan sebagai MSD; dll
Masalah :
Apa pendekatan yang lebih baik di sini?
Publikasikan semua 600 lapisan ke dalam satu layanan peta dinamis
Membagi lapisan menjadi pengelompokan logis (hidrologi, perencanaan, ekologi, utilitas, dll)
Jika Anda menggunakan # 1, dan Anda memiliki beberapa lapisan kompleks yang dihidupkan. Jika Anda ingin mengaktifkan lapisan poin sederhana, maka ArcGIS Server masih harus membuat seluruh lapisan ditampilkan lagi.
Jika Anda menggunakan # 2, setiap kali Anda membuat permintaan, secara potensial, aplikasi web harus membuat beberapa permintaan GET untuk ExportMaps dari masing-masing layanan peta (apakah ini buruk, atau apakah itu membuat beban tambahan ke ArcGIS Server di atas # 1 ?)
Dan kemudian ini mengarah ke konfigurasi & penyetelan untuk memastikan semuanya secepat mungkin. Kita dapat mengatur bagian belakang ArcGIS Server ke beberapa host dan memiliki beberapa perangkat keras yang baik untuk digunakan.
Jika Anda memilih # 1, Anda bisa melempar # jumlah instance AGS yang bisa Anda tangani.
Jika Anda menggunakan # 2, saya berasumsi Anda mengevaluasi kinerja layanan peta (pengujian beban dan lihat waktu tunggu) dan alamat instance min / max yang sesuai untuk memastikan tidak ada satu layanan yang merupakan 'tautan lemah'.
Saya saat ini condong ke pendekatan # 2, karena kepala saya masih mengatakan kepada saya bahwa memiliki 600 lapisan dalam satu layanan adalah kegilaan, tetapi jika semuanya dimatikan secara default, benar-benar tidak ada masalah.
Senang mendengar pikiran Anda. Beri tahu saya jika Anda memerlukan info lebih lanjut melalui komentar, tetapi tidak mencari jawaban seperti 'gunakan aplikasi desktop' atau 'mendidik mereka untuk melakukan sesuatu secara berbeda'
Dari diskusi dalam komentar, saya gagal menyebutkan pertimbangan lain. Aplikasi tempat layanan tersebut akan dikonsumsi, memiliki kemampuan untuk keamanan tingkat lapisan (pada tingkat aplikasi). Oleh karena itu grup pengguna (yang cukup besar) ditugaskan untuk peran tertentu, dan peran itu akan memiliki akses ke 600 lapisan penuh. Peran lain akan terbatas.