2015-06-03 10 views
15

मेरे पास एक मध्यम आकार की वेबसाइट है लेकिन PyCharm को Runserver शुरू करने में 30 सेकंड लगते हैं और ऐप चलाने के लिए तैयार रहें। यदि मैं "डीबगिंग" के बजाय ऐप चलाता हूं तो इसे शुरू करने में केवल 3 सेकंड लगेंगे।पिचर्म डीजेगो डिबगिंग वास्तव में धीमा है

कुछ चीजें हैं जो मैं कोड परिवर्तन और डिबगिंग चक्र को तेज कर सकता हूं। मैं 16 जीबी रैम के साथ एक सभ्य एमबीपी का उपयोग कर रहा हूँ। तो हार्डवेयर मुद्दा नहीं है।

मैंने परियोजना से/मीडिया फ़ाइलों को बाहर रखा है। मुझे कोई अन्य बड़ी संख्या में फाइलें नहीं हैं जो अनुक्रमण समस्याओं का कारण बनती हैं मैं पोस्टग्रेस और मोंगो डीबी दोनों का उपयोग कर रहा हूं। मैं Django 1.7 + की तरह संकुल की एक दर्जन से अधिक चला रहा हूँ:

dj-static==0.0.6 
django-annoying==0.8.1 
django-appconf==1.0.1 
django-bootstrap-form==3.2 
django-bootstrap-pagination==1.5.1 
django-compressor==1.5 
django-extensions==1.5.5 
django-filter==0.10.0        
django-guardian==1.2.5 
django-storages-redux==1.2.3 
django-widget-tweaks==1.3 
djangorestframework==3.1.2       
django-jinja==1.4.1 

यह डिबग आउटपुट है:

/Users/user1/.virtualenvs/env-test/bin/python "/Applications/PyCharm 4.5 EAP.app/Contents/helpers/pydev/pydevd.py" --multiproc --save-signatures --client 127.0.0.1 --port 64097 --file /Users/user1/gitroot/website1/manage.py runserver 0.0.0.0:8000 --verbosity 2 
Connected to pydev debugger (build 141.1245) 
pydev debugger: process 63926 is connecting 

pydev debugger: process 63954 is connecting 

Performing system checks... 

System check identified no issues (0 silenced). 
You have unapplied migrations; your app may not work properly until they are applied. 
Run 'python manage.py migrate' to apply them. 
June 03, 2015 - 09:08:52 
Django version 1.7.7, using settings 'myproject.settings' 
Starting development server at http://0.0.0.0:8000/ 
Quit the server with CONTROL-C. 

अद्यतन: इस पोस्ट के बाद से Pycharm दुभाषिए के रूप में Cython का उपयोग करने की क्षमता है । मुझे लगता है कि कुछ हद तक चीजों में सुधार हुआ है। मैं Runserverplus का उपयोग करने के लिए भी चला गया जो मुझे लगता है कि तेजी से चलता है।

उत्तर

5

ठीक है, डीबगर बस धीमा है और इसके बारे में आप इतना कुछ नहीं कर सकते हैं। बस डीबगर का उपयोग न करें जबतक कि आपको इसकी पूरी आवश्यकता नहीं है (यानी आप विशेष रूप से छद्म बग समस्या निवारण कर रहे हैं)।

मैं केवल एक चीज के बारे में सोच सकता हूं जो PyCharm के डीबगर को तेज कर सकता है और यह "कोड अंतर्दृष्टि के लिए रन-टाइम प्रकार की जानकारी एकत्रित करें" सेटिंग को बंद करना है (फ़ाइल> सेटिंग्स> बिल्ड, निष्पादन, परिनियोजन> पायथन डीबगर)।

+1

यह वास्तव में एक दर्द है कि कोई समाधान नहीं है। जेटब्रेन के मुद्दे ट्रैकिंग में कुछ टिकट भी हैं: [पीवाई -10031] (https://youtrack.jetbrains.com/issue/PY-10031#u=1401303786357), [पीवाई -10427] (https: //youtrack.jetbrains .com/issue/PY-10427 # टैब = टिप्पणियां) लेकिन कोई और संकेत नहीं – linqu

3

मेरे लिए मुद्दा imporved जब मुझे याद है मैं डिबगर सक्षम प्रकार की जानकारी एकत्र करने के लिए किया था।

  • हिट Ctrl-Shift-A या के लिए collect run-time types information for code insight

  • बॉक्स को अनचेक करें और हिट apply

  • Settings > Build, Execution, Deployment > Python Debugger के तहत खोज कर देखें कि कहीं इस में मदद करता है

मैं चलाने Pycharm Community 5.0.1

1

मैंने देखा कि मूल पोस्टर के डीबग आउटपुट में साइथन के बारे में संदेश शामिल नहीं है। मैं इस पोस्ट में आया क्योंकि मुझे पता नहीं लगा कि मेरा पिचर्म डीबग इतना धीमा क्यों था, लेकिन बाद में मुझे एहसास हुआ कि डीबगर को तेज करने के लिए एक सुझाव मेरे डीबग आउटपुट में है।

"<some-path-to-python>/python" "/Applications/PyCharm.app/Contents/helpers/pydev/setup_cython.py" build_ext --inplace 

मुझे आशा है कि लोगों ने कोशिश की है। मुझे लगता है कि यह जवाब दुनिया के गैर-आउटपुट पाठकों के लिए है।

1

इन पर प्रयोग करने के लिए की आवश्यकता है, Jetbrain blog से लिया:

  1. सभी breakpoints हटाना
  2. अपवाद अनुरेखण
  3. कोई क्रम प्रकार अंतर्दृष्टि

लेकिन यह भी देखने के लिए बंद कर देते हैं तेजी से बढ़ने के लिए Django मॉडल जांच आदि अक्षम करने पर।

मैंने परीक्षण मामलों को तेज करने के लिए एक पैच का उपयोग किया, 10x तेज दौड़ने के लिए। तो, यदि आप टीडीडी करते हैं, तो विचार दृश्यों से कम भारी होते हैं। यह आपको जल्दी से बग हल करने देता है।

संबंधित मुद्दे