2010-12-06 8 views
11

पर मैं कुछ है कि उत्पादन सर्वर पर कोड प्रोफाइल को लागू करने के विचार के साथ चारों ओर कर रही हूँ और कुछ सबसे अच्छा अभ्यास सलाह चाहता था। जाहिर है यह एक बुरा विचार जोड़ा भूमि के ऊपर की वजह से सभी अनुरोधों को तो मैं कुछ तकनीकों है कि बेतरतीब ढंग से अनुरोध के अनुसार प्रोफाइलर लागू करेगा में देख रहा था प्रोफ़ाइल है। हर 10,000 अनुरोधों के प्रति 1 प्रोफाइल की तरह कुछ।रूपरेखा कोड उत्पादन

मुझे पता है कि फेसबुक के XHProf Profiler के साथ ऐसा कार्य प्राप्त करने का एक तरीका है लेकिन xdebug का उपयोग करके इसी तरह के समाधान की उम्मीद कर रहा था।

  1. सुविधा भी सलाह दी जाती इस तरह की है:

    तो मेरे सवालों का कर रहे हैं (यह मानते हुए xdebug प्रोफाइलर है)? मैं उत्पादन वातावरण से कुछ वास्तविक विश्व डेटा प्राप्त करना चाहता हूं, लेकिन अगर इसका मतलब ओवरहेड के कारण उपयोगकर्ता अनुभव को नष्ट करना है।

  2. उत्पादन पर स्थापित करने xdebug किसी भी तरह से हमलावरों/शोषकों के लिए सर्वर को खोलने करता है (यह मानते हुए कि डिबगर सक्षम नहीं है)? क्या इस प्रकार के सेटअप के लिए बॉयलर-प्लेट कॉन्फ़िगरेशन है?
  3. का सबसे अच्छा तरीका एक उपयुक्त नमूना आकार के लिए प्रोफाइलर को गति प्रदान करने में क्या है?

इस मामले में किसी भी अन्य अंतर्दृष्टि बहुत सराहना की जाएगी।

उत्तर

9

पहिया बदलने मत करो। जब उत्पादन उत्पादन के भीतर कोड प्रोफाइलिंग की बात आती है तो एक्सएचप्रोफ प्रोफाइलर निश्चित रूप से नौकरी के लिए सबसे अच्छा उपकरण है।

xdebug भीतर रूपरेखा को सक्षम करने के लिए आपके विकल्प या तो xdebug.profiler_enable = 1 के माध्यम से एक php.ini फ़ाइल या .htaccess फाइल के माध्यम से हमेशा पर रूपरेखा होने या चुनिंदा xdebug.profiler_enable_trigger = 1 के माध्यम से की रूपरेखा को चालू करने के लिए सीमित कर रहे हैं। बाद के मामले में आपके पास XDEBUG_PROFILE GET या POST पैरामीटर सेट होना चाहिए या XDEBUG_PROFILE नाम के साथ कुकी भेजें। इसका मतलब है कि किसी को शरारती करना चाहिए, वे आपके सर्वर को अनुरोधों के समूह में बस उस पैरामीटर को जोड़कर क्रॉल में धीमा कर सकते हैं।

एकमात्र विकल्प जो मैं देख सकता था कि अनुरोधों का एक अपेक्षाकृत यादृच्छिक नमूना प्रोफाइल करना होगा, एक क्रॉन स्क्रिप्ट उचित निर्देशिका में एक .htaccess फ़ाइल को समय-समय पर रखें, और फिर इसे निर्देशिका से बाहर ले जाएं। फिर भी, यह वांछनीय से कम है।

यदि आप XHProf के साथ जाने का निर्णय लेते हैं तो XHGUI पर एक नज़र डालें।

http://phpadvent.org/2010/profiling-with-xhgui-by-paul-reinheimer

+0

सुझाव जॉन के लिए धन्यवाद। मैं xhprof पर और अधिक पढ़ूंगा और इसे और अधिक विचार दूंगा। –