Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

LAMP साइटों को गति के लिए अनुकूलित करने के लिए सर्वोत्तम अभ्यास?

यहाँ कुछ व्यक्तिगत ज़रूरी चीज़ें दी गई हैं जिन्हें मैं हमेशा अपने LAMP अनुप्रयोगों में सेट करता हूँ।

  • apache के लिए mod_deflate स्थापित करें, और PHP के gzip हैंडलर का उपयोग न करें।>

  • .htaccess फ़ाइलों से सावधान रहें! अपने ऐप में निर्देशिकाओं के लिए .htaccess फ़ाइलों को सक्षम करने का मतलब है कि अपाचे को लगातार फाइल सिस्टम को स्कैन करना होगा, .ht एक्सेस निर्देशों की तलाश में। मुख्य विन्यास या एक vhostconfiguration के अंदर निर्देश रखना कहीं बेहतर है, जहां वे एक बार लोड हो जाते हैं। जब भी आप निर्देशिका-स्तरीय एक्सेस फ़ाइल को मुख्य कॉन्फ़िगरेशन फ़ाइल में ले जाकर उससे छुटकारा पा सकते हैं, तो आप डिस्क एक्सेस समय बचाते हैं।

  • किसी प्रकार के कनेक्शन प्रबंधक का उपयोग करने के लिए अपने एप्लिकेशन का डेटाबेस लेयर तैयार करें (मैं सिंगलटन फॉरमोस्ट एप्लिकेशन का उपयोग करता हूं)। यह करना बहुत कठिन नहीं है, और आपके एप्लिकेशन द्वारा खोले जाने वाले डेटाबेस कनेक्शन की संख्या को कम करने से संसाधनों की बचत होती है।

  • यदि आपको लगता है कि आपके आवेदन में महत्वपूर्ण भार दिखाई देगा, तो मेमकेड चमत्कार कर सकता है। अपना कोड लिखते समय इसे ध्यान में रखें ... शायद एक दिन फ्लाई पर ऑब्जेक्ट बनाने के बजाय, आप उन्हें memcached से प्राप्त कर रहे होंगे। थोड़ी दूरदर्शिता कार्यान्वयन को दर्द रहित बना देगी।

  • एक बार जब आपका ऐप चालू हो जाता है और चल रहा होता है, तो MySQL की धीमी क्वेरी समय को एक छोटी संख्या पर सेट करें और धीमी क्वेरी को सावधानीपूर्वक मॉनिटर करें। यह आपको दिखाएगा कि आपकी समस्या के प्रश्न कहां से आ रहे हैं, और आपको समस्या बनने से पहले अपनी क्वेरी और अनुक्रमणिका को अनुकूलित करने की अनुमति देता है।

  • गंभीर प्रदर्शन ट्वीकर के लिए, आप स्रोत से PHP को संकलित करना चाहेंगे। पैकेज से स्थापित करने से कई पुस्तकालय स्थापित होते हैं जिनका आप कभी भी उपयोग नहीं कर सकते हैं। चूंकि PHP वातावरण को अपाचे थ्रेड के प्रत्येक उदाहरण में लोड किया जाता है, यहां तक ​​​​कि अतिरिक्त पुस्तकालयों से 5 एमबी मेमोरी ओवरहेड 50 अपाचे थ्रेड्स के अस्तित्व में न होने पर 250 एमबी खोई हुई मेमोरी बन जाती है। मैं PHP का निर्माण करते समय उपयोग की जाने वाली mystandard ./configure लाइन की एक सूची रखता हूं यहां , और मुझे यह मेरे अधिकांश अनुप्रयोगों के लिए उपयुक्त लगता है। नकारात्मक पक्ष यह है कि यदि आपको पुस्तकालय की आवश्यकता है, तो आपको इसे प्राप्त करने के लिए PHP को पुन:संकलित करना होगा। अपने कोड का विश्लेषण करें और यह सुनिश्चित करने के लिए एक विकासशील वातावरण में इसका परीक्षण करें कि आपके पास वह सब कुछ है जो आपको चाहिए।

  • अपनी जावास्क्रिप्ट को छोटा करें।

  • छवियों और वीडियो जैसी स्थिर सामग्री को गैर-गतिशील वेब सर्वर पर ले जाने के लिए तैयार रहें। अपना कोड लिखें ताकि भविष्य में किसी अन्य सर्वर को इंगित करने के लिए छवियों और वीडियो के किसी भी URL को आसानी से कॉन्फ़िगर किया जा सके। स्थैतिक सामग्री के लिए अनुकूलित वेब सर्वर आसानी से गतिशील सामग्री सर्वर की तुलना में दसियों या यहां तक ​​कि सैकड़ों गुना तेजी से सेवा दे सकता है।

यही मैं अपने सिर के ऊपर से सोच सकता हूं। PHP के सर्वोत्तम अभ्यासों के लिए चारों ओर घूमने से तेज़/बेहतर कोड लिखने के तरीके के बारे में बहुत सी युक्तियां मिल जाएंगी (जैसे:echo print . से तेज है )।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्यूटी - कैसे प्राप्त करें | माइस्क्ल ड्राइवर संकलित करें

  2. Laravel 4 पूरी RAW क्वेरी नहीं चला सकता

  3. utf8mb4_unicode_ci बनाम utf8mb4_bin

  4. तैयार बयान जहां मूल्य सरणी में है

  5. मैं एक MySQL तालिका में एक यूनिकोड इलिप्सिस को सही ढंग से सम्मिलित करने के लिए SQLAlchemy कैसे प्राप्त करूं?