मैं इस विषय पर विकिपीडिया लेख पढ़ने के साथ शुरू करूंगा ।
संक्षेप में, मापनीयता यह है कि सिस्टम प्रदर्शन अधिक संसाधनों को जोड़ने के साथ बढ़ता है या, वैकल्पिक रूप से, बढ़ते लोड के साथ संसाधन का उपयोग कैसे बढ़ता है । उदाहरण के लिए, प्रति सेकंड 0.3 सेकंड से आगे बढ़ने तक कितने समवर्ती उपयोगकर्ता आपकी साइट को संभाल सकते हैं? आपके द्वारा उपलब्ध RAM / डिस्क / CPU / etc को दोगुना करने के बाद भी यही प्रश्न है। आप शायद यह तय करने के लिए कि कौन से पैरामीटर जाँच करने योग्य हैं, एप्लिकेशन इंटर्नल के अपने ज्ञान का उपयोग कर सकते हैं।
एक सर्वर मशीन और एक या अधिक क्लाइंट मशीनों के साथ एक परीक्षण बेंच सेट करें। सर्वर के लिए उपलब्ध संसाधनों की मात्रा को सीमित करने के लिए कुछ उपकरण का उपयोग करें (उदाहरण के लिए ulimit
) या सर्वर पर कुछ हस्तक्षेप अनुप्रयोग चलाएं। मापें कि सर्वर क्लाइंट अनुरोधों के साथ कैसे व्यवहार करता है। उपरोक्त धीरे-धीरे बढ़ते / घटते हुए हस्तक्षेप को लोड / उपलब्ध संसाधनों को दोहराएं। अंत में आपको इसमें डॉट्स के साथ एन-डायमेंशनल स्पेस मिलता है। कुछ विशिष्ट मूल्य (या कुछ मूल्यों) पर अन्य सभी को ठीक करते समय एक समय में केवल एक पैरामीटर बदलना आसान हो सकता है। इस मामले में आप सर्वर के प्रदर्शन (उदाहरण के लिए उपयोगकर्ताओं / अनुरोधों की संख्या) के साथ 2 डी ग्राफ के एक समूह के रूप में परिणाम का प्रतिनिधित्व कर सकते हैं, एक धुरी पर और दूसरे पर संसाधन उपयोग / उपलब्धता।
अधिक जटिल परिदृश्य हैं जहां आपका एप्लिकेशन एप्लिकेशन के कई भाग के लिए कई सर्वरों का उपयोग करता है और आप उनकी राशि और अनुपात को भिन्न कर सकते हैं, लेकिन मुझे लगता है कि यह आपका मामला है। अधिक से अधिक, आप शायद थ्रेड्स / प्रक्रियाओं की संख्या में भिन्नता चाहते हैं, यदि यह मायने रखता है।
यदि आप पूरे एप्लिकेशन को मापते हैं तो आपको आमतौर पर सोर्स कोड एक्सेस की आवश्यकता नहीं होती है। हालाँकि, आप कोड के कुछ विशिष्ट भाग (जैसे केवल DB या UI) को मापने में दिलचस्प हो सकते हैं। तब आप माप के लिए केवल इस मॉड्यूल को उजागर करने और अपने परीक्षण चलाने के लिए स्रोत कोड का उपयोग कर सकते हैं। इसे माइक्रोबेनमार्क कहा जाता है ।
यदि आप उदाहरणों की तलाश कर रहे हैं, तो अकादमिक लेखों में उनमें से बहुत कुछ है। प्रदर्शन मूल्यांकन + अपनी पसंदीदा शर्तों के लिए Google विद्वान खोजें ।