एक या कई सेवाओं में बहुत सारी परतें? (और क्यों)


13

मेरे पास एक पहेली है कि मुझे कैसे जाने के बारे में मिश्रित सलाह मिल रही है। इसलिए आईडी कुछ उचित जवाबों के लिए इसे जीआईएस-एसई में डालना पसंद करती है।

परिदृश्य:

  • क्लाइंट के पास वेब मैपिंग एप्लिकेशन है। कई छोटे अनुप्रयोगों में विभाजित नहीं करना चाहता है। यद्यपि यह इस बात के खिलाफ है कि वेब पर मानचित्रों के लिए आधुनिक दिन का दृष्टिकोण क्या है, (यानी एक मुख्य वेब-मैप पर बहुत सारे फ़ोकस किए गए वेब-मैप ऐप्स) मेरा दृढ़ता से मानना ​​है कि कुछ उपयोगकर्ताओं के लिए, वेब पर जीआईएस एप्लिकेशन को दोहराने की कोशिश कर रहा है। ठीक है ( कभी-कभी )।

  • क्लाइंट ने अपने बेसमैप लेयर्स को अलग-अलग सेवाओं में कैश्ड कर दिया है।

  • क्लाइंट को अभी भी डायनेमिक मैप सर्विस में अतिरिक्त 600-700 लेयर की आवश्यकता होती है ...
  • सेवा को इन सभी परतों के बंद होने के साथ प्रकाशित किया जाएगा
  • यह अनुमान नहीं है कि उपयोगकर्ता एक बार में 10-40 से अधिक परतों को चालू करेंगे।

मुझे लगता है कि यह आपकी प्रारंभिक प्रतिक्रिया मेरी (600+? WTF) के समान है ?!

हालाँकि - आवश्यकता पत्थर में सेट है और क्यों नहीं? उनके पहले के आर्किम्स एप्लिकेशन में समान कार्यक्षमता थी, इसलिए यह नया आर्कगिस सर्वर उत्पाद ऐसा क्यों नहीं कर सकता है? उपयोगकर्ताओं को संभावित रूप से परतों की संपूर्ण श्रेणी पर तुलना और विश्लेषण करने में सक्षम होने की आवश्यकता होती है, भले ही परतें अन्य विभागों से संबंधित हों।

इससे पहले कि आप निष्कर्ष पर जाएं, क्लाइंट एक आर्कगिस सर्वर एडमिन से जुड़ा हुआ है।
उन्होंने सभी सर्वोत्तम अभ्यास नियमों द्वारा 600 परतों को प्रशासित किया है: उदाहरण के लिए परिभाषा प्रश्नों के साथ संयुक्त पैमाने; लेबलिंग पर एनोटेशन; छोटे पैमानों पर जटिल परतें बनाना; एमएसडी के रूप में प्रकाशित; आदि

समस्या :

यहां बेहतर दृष्टिकोण क्या है?

  1. सभी 600 परतों को एक गतिशील मानचित्र सेवा में प्रकाशित करें

  2. परतों को तार्किक समूहों में विभाजित करें (जल विज्ञान, योजना, पारिस्थितिकी, उपयोगिताओं, आदि)

यदि आप # 1 के साथ जाते हैं, और आपके पास कुछ जटिल परतें हैं। यदि आप एक सरल बिंदु परत को चालू करना चाहते हैं, तो आर्कजीआईएस सर्वर को अभी भी सभी परतों को फिर से प्रदर्शित करना होगा।

यदि आप # 2 के साथ जाते हैं, तो हर बार आपके अनुरोध करने पर, संभावित रूप से, वेब एप्लिकेशन को व्यक्तिगत मानचित्र सेवाओं से ExportMaps के लिए कई GET अनुरोध करने पड़ सकते हैं (क्या यह बुरा है, या क्या यह # 1 पर ArcGIS सर्वर पर अतिरिक्त लोड बनाता है? ?)

और फिर यह सब कुछ सुनिश्चित करने के लिए कॉन्फ़िगरेशन और ट्यूनिंग की ओर जाता है। हम आर्कजीस सर्वर के बैक एंड को कई मेजबानों पर स्केल कर सकते हैं और इस पर बैठने के लिए कुछ अच्छे हार्डवेयर हैं।

यदि आप # 1 के साथ जाते हैं, तो आप अधिकतम उन उदाहरणों को फेंक सकते हैं जिन्हें आप AGS संभाल सकते हैं।

यदि आप # 2 के साथ जाते हैं, तो मुझे लगता है कि आप मानचित्र सेवाओं के प्रदर्शन का मूल्यांकन करते हैं (लोड परीक्षण और प्रतीक्षा के समय देखें) और मिनट / अधिकतम उदाहरणों को संबोधित करते हुए सुनिश्चित करें कि एक सेवा नहीं है जो एक 'कमजोर कड़ी' है।

Im वर्तमान में # 2 दृष्टिकोण की ओर झुक रहा है, क्योंकि मेरा सिर अभी भी मुझे बता रहा है कि एक सेवा में 600 परतें होना पागलपन है, लेकिन अगर वे सभी डिफ़ॉल्ट रूप से बंद हो जाते हैं, तो वास्तव में कोई समस्या नहीं है।

आपके विचारों को सुनकर खुशी होगी। मुझे बताएं कि क्या आपको टिप्पणियों के माध्यम से अधिक जानकारी चाहिए, लेकिन 'डेस्कटॉप एप्लिकेशन का उपयोग करें' या 'अलग-अलग चीजों को करने के लिए उन्हें शिक्षित करने' जैसे उत्तरों की तलाश नहीं है


टिप्पणियों में चर्चा से, मैं एक और विचार का उल्लेख करने में विफल रहा। जिस एप्लिकेशन को सेवा का उपभोग किया जाएगा, उसमें परत स्तर सुरक्षा (एप्लिकेशन स्तर पर) की क्षमता है । इसलिए उपयोगकर्ताओं के समूह (जो काफी बड़े होते हैं) को एक विशेष भूमिका सौंपी जाती है, और उस भूमिका की पूरी 600 परतों तक पहुंच होगी। अन्य भूमिकाएं सीमित होंगी।


व्यक्तिगत रूप से, मैं पीएम को समस्या से अवगत कराने के लिए एक सवाल रखूंगा, सर्वोत्तम अभ्यास पर सलाह दूंगा, एक रास्ता सुझाऊंगा, फिर इसे उनके हाथों में छोड़ दूंगा। दिन के अंत में, जैसे ही आपके पास कोई कहे: 'लेकिन वह तरीका यह था', आपके हाथ भरे हुए हैं। इस स्थिति में, मैं ऊपर जैसा करूँगा, फिर आप पेशेवर हैं, योर जॉब कर चुके हैं, और बाकी सब उनके ऊपर है। मैं सलाह दूंगा कि किसी को भी, जहाँ आप काम करते हैं, के बारे में ईमेल पर, यह सुनिश्चित करने के लिए अमीर और प्रसिद्ध को शामिल करें कि सलाह क्या है, और यह सभी जानते हैं कि सलाह क्या थी, और किसने दी।
बालों में

आप ऐसा नहीं कहते हैं कि जिस तरह के वेब का उपयोग परतों को ब्राउज़ करने के लिए किया जाएगा, लेकिन मुझे लगता है कि यह एक तरह का ओपनर है। उस स्थिति में ध्यान रखें कि ब्राउज़र भी समस्याएं पेश कर सकता है, क्योंकि यह एक ही सर्वर (XHR, css और सब कुछ सहित) के लिए कुछ (2 और 6 के बीच) समवर्ती अनुरोधों से अधिक जारी नहीं करेगा । विवरण और कुछ विकल्पों के लिए इस लेख को देखें (मैं आमतौर पर कई cnames के लिए जाता हूं जब आईटी सहकारी है): stevesouders.com/blog/2008/03/20/…/
unicoletti

@ हर्ष - मुझे वास्तव में लगता है कि हम ग्राहक की जरूरतों को आर्किस सर्वर के साथ पूरा कर सकते हैं, और हालांकि इसकी सीमाएं एजीएस के साथ संभव हो सकती हैं, फिर भी यह सक्षम है, और हम अभी भी हमारी पूर्व सलाह पर टूटने के लिए वापस आ सकते हैं कई ऐप में ऐप।
साइमन

1
मुझे पता है कि यह उल्लेखनीय है, मैं उन ग्राहकों के साथ काम कर रहा हूं जो ऐसा ही करते हैं, लेकिन मुझे नहीं लगता कि यह उचित है, जो अलग-अलग चीजें हैं। अगर वे 10 ग्राहक तय करते हैं, जो एक समय में सभी 600 परतों को चाहते हैं, तो कोई फर्क नहीं पड़ता कि आप एजीएस पर चल रहे हैं, यह खत्म हो जाएगा
बालों वाली

जवाबों:


8

एक सुपर हेवी मैप सर्विस बनाम 4 लाइट मैप सेवाओं की तुलना करने में मदद करने के लिए क्षमता योजना टूल का उपयोग किया , और परिणाम दर्शाते हैं कि हेवी मैप सर्विस जाने का रास्ता है।

यह सही उत्तर नहीं हो सकता है, और क्षमता नियोजन उपकरण हर कारक (जैसे उपयोगकर्ता वर्कफ़्लोज़) को ध्यान में नहीं रखता है - मुझे टिप्पणियों के माध्यम से बताएं कि आप क्या सोचते हैं।

1 सुपर भारी नक्शा सेवा:
ऐप सर्वर सीपीयू उपयोग = 49.4%
डेटाबेस सर्वर सीपीयू उपयोग = 7.6%
नेटवर्क लोड = 16 एमबीपीएस
प्रदर्शन प्रतिक्रिया समय = 0.88 सेकंड

(छवियाँ बड़े पैमाने पर RC द्वारा देखी जा सकती हैं और नए टैब में खुल सकती हैं)

यहाँ छवि विवरण दर्ज करें

4 लाइट मैप सेवाएं:
ऐप सर्वर सीपीयू उपयोग = 55.4%
डेटाबेस सर्वर सीपीयू उपयोग = 7.6%
नेटवर्क लोड = 64 एमबीपीएस
डिस्प्ले रिस्पांस टाइम = 0.32 प्रत्येक को सुरक्षित करता है, इसलिए वेब ब्राउज़र ओवरहेड्स के आधार पर 0.32 और 1.28 सेकंड के बीच होता है।

यहाँ छवि विवरण दर्ज करें

एक मैप सेवा दृष्टिकोण का समर्थन करने के लिए और अधिक तर्क:

  1. सभी परतें एक ही मानचित्र सेवा में हैं, इसलिए;
    ए। एक अनुरोध सर्वर
    b को भेजा जाता है । एक एसओसी प्रक्रिया मानचित्र
    ग को खींचती है । नेटवर्क पर एक छवि दी गई है

  2. 40 परतें 4 मानचित्र सेवाओं (प्रत्येक 10 परतें) में फैली हुई हैं, इसलिए;
    ए। 4 अनुरोध सर्वर
    बी के लिए भेजे जाते हैं । 4 एसओसी प्रक्रियाएं एक नक्शा
    ग खींचती हैं। 4 चित्र नेटवर्क पर दिए गए हैं

1 ए और 1 सी तेजी से होगा और 2 ए और 2 सी की तुलना में नेटवर्क पर कम भार डाल देगा।

2 बी एक उपयोगकर्ता के लिए 1 बी की तुलना में मानचित्र को जल्दी वापस करने के लिए समानांतर प्रसंस्करण का उपयोग कर सकता है, लेकिन कई उपयोगकर्ताओं के लिए ऐसा नहीं होगा। वास्तव में, सर्वर द्वारा 2 बी (प्लस 2 सी के अतिरिक्त नेटवर्क लोड) में संसाधित किए जा रहे अतिरिक्त लेनदेन का ओवरहेड 1 बी पैमाने पर बेहतर दिखाई देगा क्योंकि उपयोगकर्ताओं की संख्या बढ़ जाती है।


2
यह तर्कसंगत लगता है। 600-लेयर एमएक्सडी को प्रबंधित करने में बहुत मज़ा नहीं आता है।
स्टीफन लीड

1

हालाँकि कई सेवाओं, स्केलिंग लेयर्स / लेबल्स, कैशिंग, और नॉन डायनेमिक लेबल्स का उपयोग करने से वेब एप्लिकेशन अनुभव को बेहतर बनाने में मदद मिलती है, सभी 600+ लेयर्स को एक एप्लिकेशन में लोड करने की शुरुआती हिट एंड यूज़र द्वारा ध्यान देने योग्य होगी। विशेष रूप से टीओसी को आबाद करने में लगने वाला समय। अगर आपको 600+ लेयर एप्लीकेशन बनानी है तो मैं निश्चित रूप से # 2 विकल्प के साथ जाऊंगा। आप किसी डेटा मॉडल (जैसे स्थानीय सरकार डेटा मॉडल) के खिलाफ अपने डेटा स्ट्रेंथ को मॉडल करना चाह सकते हैं ।

नीचे दिए गए श्वेतपत्र कुछ दिलचस्प सर्वोत्तम अभ्यास दिशानिर्देश और आर्कजीस सर्वर वेब एप्लिकेशन कॉन्फ़िगरेशन के लिए प्रदर्शन आँकड़े पर प्रकाश डालते हैं।

http://www.esri.com/library/whitepapers/pdfs/creating-arcgisserver-web-mapping.pdf


टीओसी पर अच्छी बात है, लेकिन यह वास्तव में ठीक लोड करता है। 'प्रारंभिक हिट 600+ परतों को लोड करने के लिए' = एक मानचित्र अनुरोध के दृष्टिकोण से, इसका अभी भी केवल एक सेवा के लिए एक अनुरोध कर रहा है। तो यह वास्तव में AGS के लिए निर्यात UNTIL को वापस करने के लिए काफी जल्दी है, वे 20 परतों को चालू करना शुरू करते हैं।
साइमन 8
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.