कौन सा Magento Extension आपकी वेबसाइट को धीमा कर रहा है?
अंदाज़ा लगाना बंद करें।
स्टोर का धीमा होना अक्सर बहुत अधिक extensions के कारण होता है। समस्या का पता लगाने के लिए अधिकांश लोग उन्हें एक-एक करके disable करते हैं। यह debugging नहीं है। यह एक लाइव site पर केवल अंदाज़ा लगाना है।
Magento 2 आपको किसी extension की लागत (cost) मापने की अनुमति देता है। आपको चार क्षेत्रों पर ध्यान देने की आवश्यकता है:
- Plugins: प्रत्येक plugin एक request में एक अतिरिक्त layer जोड़ता है। fast paths पर कई plugins धीमी requests का कारण बनते हैं।
- Observers: किसी सामान्य event पर लगा observer हर page पर चलता है।
- Layout: Modules साझा containers में blocks इंजेक्ट करते हैं। ये तब भी चलते हैं जब आपको उनकी आवश्यकता नहीं होती है।
- Queries: प्रति item एक अतिरिक्त lookup एक ही page पर सैकड़ों अतिरिक्त queries बना सकता है।
अंदाज़ा न लगाएं। सच्चाई जानने के लिए built-in profiler का उपयोग करें।
इस command को चलाएं:
bin/magento dev:profiler:enable
एक धीमा page लोड करें। उन methods को देखें जिन्हें बहुत अधिक बार call किया गया है। यदि कोई method 1,400 बार call किया जाता है, तो यह एक समस्या है।
बेहतर डेटा के लिए, Blackfire, Xdebug, या New Relic का उपयोग करें। Blackfire आपको सटीक रूप से दिखाता है कि एक vendor namespace कितना समय लेता है।
आप अपनी फाइलों को search करके भी यह पता लगा सकते हैं कि modules कहाँ hook हो रहे हैं:
Plugins खोजने के लिए:
grep -rl "<plugin" vendor/*/module-*/etc/ app/code/*/*/etc/
Observers खोजने के लिए:
grep -rl "<observer" vendor/*/module-*/etc/ app/code/*/*/etc/
एक बार जब आपको संदिग्ध (suspect) मिल जाए, तो वैज्ञानिक पद्धति (scientific method) का उपयोग करें:
- Module active होने पर page speed मापें।
- उस विशिष्ट module को disable करें।
- फिर से page speed मापें।
अंतर ही उस module की वास्तविक लागत है।
जब आपको कोई धीमा module मिले, तो आपके पास तीन विकल्प होते हैं:
- Scope बदलें: plugin को विशिष्ट क्षेत्रों तक सीमित करने के लिए di.xml का उपयोग करें।
- Logic बदलें: एक भारी around plugin को बदलने के लिए अपना स्वयं का हल्का (thin) module लिखें।
- इसे हटा दें: यदि लागत इसके value से अधिक है, तो इसे delete कर दें।
Performance को लोककथा (folklore) की तरह मानना बंद करें। अपने store को ठीक करने के लिए data का उपयोग करें।
Source: https://dev.to/iamrobindhiman/which-magento-extension-is-slowing-you-down-stop-guessing-1mj3