उपकरण और kcachegrind Xdebug पीएचपी प्रोफाइलर के उत्पादन में कल्पना। प्रोफाइलर का आउटपुट व्यावहारिक रूप से सभी प्रारंभिक समय, निष्पादन समय और पदानुक्रम के साथ सभी PHP फ़ंक्शन कॉल का लॉग है।
एक ठेठ दृश्य निम्न चित्र में दिखाया गया है:
बाईं ओर 'फ्लैट' प्रोफ़ाइल है। यह कम से कम समय लेने वाली अधिकांश समय से सभी व्यक्तिगत फ़ंक्शन कॉल सूचीबद्ध करता है। 'सहित' कॉलम कैली सहित समारोह द्वारा खपत का समय दिखाता है। 'सेल्फ' कॉलम कॉलियों को छोड़कर फ़ंक्शन द्वारा बिताए गए समय को दिखाता है। 'कॉल किया गया' और 'फ़ंक्शन' कॉलम क्रमशः फ़ंक्शन के नाम और फ़ंक्शन का नाम (प्लस नेमस्पेस) की संख्या दिखाता है।
दाईं तरफ, कॉलर्स और कैलीज़ को देखने के लिए विभिन्न विचार उपलब्ध हैं। कॉलर्स और कैलीज बाईं तरफ चुने गए फ़ंक्शन से मेल खाते हैं।
शीर्ष पर मेरे स्क्रीनशॉट में, 'कैली मानचित्र' खोला गया है। प्रत्येक आयताकार चयनित फ़ंक्शन (एक कैली) के भीतर फ़ंक्शन कॉल होता है और प्रत्येक आयत कैली का एक कैली है। आकार रिश्तेदार 'इनक्ल' से मेल खाता है। पहर।
नीचे, 'ऑल कैलीज' दृश्य आपके द्वारा चुनी गई संपत्ति द्वारा चयनित फ़ंक्शन ऑर्डर के कॉलिज़ दिखाता है।
एक अधिक विस्तृत दृश्य के नीचे दिखाया गया है:
इस 'स्व' को समय पर हल कर एक Laravel डेटाबेस समारोह के एक समारोह है। आप स्पष्ट रूप से देखते हैं कि विभिन्न फ़ंक्शन कॉल कैसे संबंधित होते हैं और अधिकतर फ़ंक्शन कितना समय लेता है: PDOStatement :: execute। यह कोई आश्चर्य की बात नहीं है क्योंकि यह एक ऐसा कार्य है जो बाहरी डेटाबेस से जुड़ता है, इसे पूछताछ करता है और परिणाम की प्रतीक्षा करता है।
अपने मूल स्क्रीनशॉट पर वापस जाएं। यह आपको बताता है कि आपके एप्लिकेशन ने PHP के session_start
फ़ंक्शन में बहुत अधिक समय (बहुत अधिक रास्ता) बिताया। यह 99.8% स्व समय द्वारा दिखाया गया है।
स्रोत
2016-12-09 23:00:41
क्या आपको qCacheGrind के लिए कोई उपयोगी दस्तावेज मिला है जिसे आप साझा कर सकते हैं? –
@KimberlyW दुर्भाग्यवश, नहीं, मैंने कभी नहीं किया। – DelightedD0D
@ किम्बर्लीडब्ल्यू मैं एक साल से अधिक इंतजार कर रहा था, ऐसा लगता है कि आप 8 दिनों के साथ भाग्यशाली हैं, टॉम ने अभी एक उत्तर जोड़ा है जो इसे बहुत अच्छी तरह से बताता है – DelightedD0D