नमूना और रूपरेखा के बीच अंतर jVisualVM


158

VisualVM के नमूने और रूपरेखा के लिए दो अलग-अलग टैब हैं। VisualVM में नमूनाकरण और रूपरेखा के बीच क्या अंतर है?

जवाबों:


182

Samplingइसका अर्थ है ढेर सारे डंप लेना और स्टैक के निशान का विश्लेषण करना। यह आमतौर पर तेज़ होता है, आपको अपने बायटेकोड में रनटाइम परिवर्तन की आवश्यकता नहीं होती है (जो इसे तोड़ सकता है), लेकिन यह भी कम सटीक है।

Profilingका अर्थ है अपनी कक्षाओं और विधियों को लागू करना, इसलिए जब भी वे चलाए जाते हैं, तो वे "रिपोर्ट" करते हैं। यह अधिक सटीक है, क्योंकि यह इंस्ट्रूमेंटेड विधि के हर आह्वान को गिनता है, न केवल उन लोगों को जब डंप किया जाता है। हालांकि इंस्ट्रूमेंटेशन का मतलब है कि आपकी कक्षाओं का बायटेकोड बदल गया है, और इससे आपका प्रोग्राम टूट सकता है। दरअसल, इस कारण से, बड़े एप्लिकेशन सर्वर (जैसे JBoss, या WebLogic) पर प्रोफाइलिंग का उपयोग करने से अक्सर सब कुछ मर जाता है या लटका होता है।


2
क्या इसका मतलब यह होगा कि प्रोफाइलिंग नमूना लेने की तुलना में अधिक सटीक है, लेकिन इसमें अधिक संसाधन लगेंगे?
पराग

10
मैंने पाया है कि सैंपलिंग हर बार सटीक से अधिक है जब मैंने इसे खराब प्रदर्शन करने वाले तरीकों को इंगित करने के लिए उपयोग किया है। मैं व्यक्तिगत रूप से प्रोफाइलिंग का उपयोग कभी नहीं करता।
मार्केज़
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.