सर्वर साइड प्रदर्शन को बढ़ाने के लिए आप कई कदम उठा सकते हैं। ध्यान दें कि इनमें से कुछ सबसे साझा होस्ट के साथ काम नहीं करेंगे। महान प्रदर्शन के लिए आपको आमतौर पर अधिक महीन दाने वाले नियंत्रण की आवश्यकता होती है।
किसी भी अनुकूलन के साथ, आपको अपनी साइट के प्रदर्शन पर इसके प्रभाव को मापना चाहिए। बुनियादी अनुकूलन के लिए PageSpeed और YSlow जैसे उपकरण सहायक हैं (मैं फ़ायरफ़ॉक्स संस्करणों की सलाह देता हूं)। अधिक गहन समझ के लिए, आपको समय के साथ अपने लाइव सिस्टम के वास्तविक प्रतिक्रिया समय को मापना होगा।
पीएचपी
ओपकोड कैशिंग सक्षम करें
यह संभवतः आपकी साइट के प्रदर्शन को बढ़ाने के लिए एक सबसे बड़ी चीज है। मैं या तो OpCache या APC का उपयोग करने की सलाह देता हूं । इन कैश के कॉन्फ़िगरेशन को सर्वर और साइटों की विशिष्ट आवश्यकताओं के आधार पर और भी अधिक प्रदर्शन के लिए ट्वीक किया जा सकता है, लेकिन बस स्थापित करना पहले से ही बहुत बड़ा बढ़ावा है।
PHP संस्करण अद्यतन करें
नए PHP संस्करण नियमित रूप से प्रदर्शन में सुधार के साथ आते हैं। इसके अतिरिक्त, ऐसे कई मामले हैं जहां जूमला नए PHP संस्करण पर चलने पर बेहतर कोड का उपयोग कर सकता है। यदि आप प्रदर्शन की परवाह करते हैं, तो आज तक आपको PHP 5.4 से अधिक पुराने संस्करण का उपयोग नहीं करना चाहिए।
PHP सेटिंग्स
पुराने PHP संस्करणों पर (<= 5.3) बंद करने register_globals
और magic_quotes_gpc
एक मुक्त प्रदर्शन जीत के लिए ध्यान रखना । PHP पर = = 5.6 बदलकर always_populate_raw_post_data
-1।
PHP एक्सटेंशन
Joomla में PHP एक्सटेंशन के लापता होने के समाधान के लिए कुछ कोड होते हैं। यह हमेशा उन एक्सटेंशन की तुलना में धीमा होगा। एक सभ्य प्रदर्शन में सुधार के लिए निम्नलिखित एक्सटेंशन स्थापित: mbstring
, zip
,ftp
वेब सर्वर
गज़िप सक्षम करें
सीपीयू संसाधनों के लिए सर्वर साइड संपीड़न संपीड़न बैंडविड्थ को सक्षम करना। अधिकांश साइटों के लिए यह सही कॉल है। केवल पाठ डेटा को संपीड़ित करने के लिए सावधान रहें, द्विआधारी डेटा को संपीड़ित करने से आपको बैंडविड्थ लाभ के बिना सीपीयू हिट मिलेगा। आप जूमला सेटिंग्स में कम्प्रेशन को सक्षम कर सकते हैं लेकिन सर्वर को इससे निपटने दें तो बेहतर है।
स्थिर संसाधनों को प्राथमिकता दें
मैं minfication (हालांकि यह भी मदद करता है) के बारे में बात नहीं कर रहा हूँ, लेकिन आप Gginip संपीड़न से सीपीयू हिट को प्रभावी ढंग से समाप्त करते हुए, पहले से ही संपीड़ित संसाधनों को सर्वर से Nginx और Apache कॉन्फ़िगर कर सकते हैं। बोनस अंक: यहां तक कि छोटी फ़ाइलों के लिए ज़ोफ़ली का उपयोग करें ।
PHP के लिए FastCGI का उपयोग करें
अधिक विशेष रूप से आपको उपयोग करना चाहिए php-fpm
। जब ब्राउज़र गैर-PHP फ़ाइल का अनुरोध करता है तो यह PHP शुरू करने से रोकता है।
उपयुक्त कैश हेडर का उपयोग करें
Expires
हेडर का उपयोग करना सर्वर संसाधनों की आवश्यकता को बहुत कम कर सकता है। सभी के बाद सबसे तेज़ अनुरोध कभी नहीं किया जाता है।
अमरीका की एक मूल जनजाति
आमतौर पर मैं उच्च प्रदर्शन साइटों के लिए Nginx का उपयोग करने की सलाह दूंगा। यदि आपको किसी कारण से अपाचे का उपयोग करने की आवश्यकता है तो मुझे बोनस टिप मिल गई है:
AllowOverride अक्षम करें
बहुत सारे IO और I AllowOverride
को None
रोकने के लिए सेटिंग
जूमला
एफ़टीपी मोड का उपयोग न करें
हालांकि यह साइट को पढ़ने वाले आपके उपयोगकर्ताओं को प्रभावित नहीं करता है, यह एक्सटेंशन की स्थापना जैसे कुछ संचालन को धीमा कर देगा।
अप्रयुक्त एक्सटेंशन बंद करें
यह विशेष रूप से प्लगइन्स के लिए जाता है, इनमें से कई हर अनुरोध पर चलाए जाते हैं। उपलब्ध एक्सटेंशन और मेनू प्रकार सूचीबद्ध करते समय मेनू और घटकों को अक्षम करना मुख्य रूप से सहायक होता है। जूमला कोर के साथ आने वाले एक्सटेंशन को गर्त में जाने के लिए 5 मिनट का समय लें और उन लोगों को अक्षम करें जिन्हें आप उपयोग नहीं करते हैं।
सामग्री तैयार करें बंद करें
यदि आप बहुत सारे कस्टम मॉड्यूल का उपयोग करते हैं ( mod_custom
स्व लिखित रूप में कस्टम नहीं) तो जांचें कि क्या आप उन में तैयार सामग्री को अक्षम कर सकते हैं। यह कुछ प्रसंस्करण बचाता है।
कैशिंग का उपयोग करें
यदि आप प्रदर्शन के बारे में गंभीर हैं तो आप कैशिंग सक्षम करना चाहेंगे। कई गुमनाम उपयोगकर्ताओं के साथ भारी साइटों को पढ़ने के लिए विशेष रूप से उपयोगी है। लॉग-इन उपयोगकर्ता अधिकांश कैश को बायपास कर देंगे, यदि आपके पास इनमें से बहुत अधिक है तो प्रभाव उतना बड़ा नहीं होगा।
एक वैकल्पिक सत्र हैंडलर का उपयोग करें
वैकल्पिक सत्र हैंडलर का उपयोग करके आप अपने डेटाबेस को अधिक महत्वपूर्ण चीजों के लिए मुक्त कर सकते हैं। मैं फ़ाइल की सिफारिश नहीं करूंगा (भ्रमित करने के लिए जूमला सेटिंग्स में कोई नहीं कहा जाता है) क्योंकि यह एक बार फिर डिस्क आईओ को बढ़ाएगा। APC का उपयोग संभावित रूप से उपवास है, लेकिन सभी सत्र डेटा खोने का खतरा बढ़ जाता है। दायां मध्य मैदान मेमकेच है। जबकि इसके लिए एक अतिरिक्त प्रक्रिया की आवश्यकता होती है, यह APC से अधिक विश्वसनीय है और डेटाबेस के सभी डेटा को संग्रहीत करने की तुलना में बहुत तेज़ है
अपनी साइट को सरल रखें
क्या आपको वास्तव में उस फेसबुक बटन की आवश्यकता है? उस प्यारे आइकन के बारे में क्या जो कभी कोई नहीं देखता क्योंकि यह आंशिक रूप से किसी बैनर के पीछे छिपा हुआ है? आपकी साइट जितनी तेज़ी से प्रदर्शित होगी, उतनी ही कम होगी। जहाँ भी संभव हो छवियों के बजाय CSS3 का उपयोग करें।
विविध
एक फ़ेविकॉन सेट करें
Internet Explorer 4.0 ब्राउज़र पर वापस डेटिंग करने के निर्णय के लिए धन्यवाद favicon.ico
जब भी कोई उपयोगकर्ता आपकी साइट पर जाता है, तो फ़ाइल से अनुरोध करता है । यदि आपके पास ऐसा नहीं है, तो यह अनावश्यक IO का कारण बनता है, क्योंकि 404 प्रतिक्रियाओं को कैश नहीं किया गया है। या तो एक HTML मेटा टैग के साथ अपनी साइट का आइकन निर्दिष्ट करें या favicon.ico
वेब रूट नामक एक फ़ाइल जोड़ें । एक favicon नहीं चाहते हैं? उस स्थान पर 1x1 पिक्सेल के आकार के साथ एक पारदर्शी पीएनजी रखें। ध्यान दें कि एक्सटेंशन अभी भी होना चाहिए .ico
।
अपनी छवियों का अनुकूलन करें
यह आश्चर्यजनक है कि छवियों को अनुकूलित करके विशेष रूप से PNG फ़ाइलों को किस प्रकार की बचत मिल सकती है। किसी भी ऑपरेटिंग सिस्टम के लिए कई प्रकार के उपकरण उपलब्ध हैं, व्यक्तिगत रूप से मैं इमेजओप्टिम का उपयोग करता हूं जो ओएस एक्स के लिए उपलब्ध है। जूमला की मुख्य छवियां पहले से ही अनुकूलित हैं लेकिन अपनी खुद की छवियों को गर्त में ले जाएं, विशेष रूप से टेम्पलेट महत्वपूर्ण हैं। आप अपने द्वारा उपयोग किए जा रहे एक्सटेंशन को भी देख सकते हैं। यदि वे खुले स्रोत हैं, तो आप नई अनुकूलित छवियों वाले पुल अनुरोध में योगदान क्यों नहीं करते हैं?
उन्नत
यदि आप वास्तव में बाहर जाना चाहते हैं, तो अपनी साइट के सामने वार्निश लगाने पर विचार करें। यह आपकी साइट के लिए अनुरोधों को कैश करता है और यदि संभव हो तो यह स्वयं के कैश से कार्य करता है, तो जूमला से कभी न टकराएं। यह एक जटिल उपकरण है लेकिन बहुत शक्ति के साथ। जूमला एडवांस्ड फंक्शनलिटी का फायदा नहीं उठाएगा जैसे एज साइड (ईएसआई) शामिल है लेकिन आपका अपना कोड हो सकता है।