मेरे सिर को खरोंचने के बाद यह पता लगाने की कोशिश की जा रही है कि मेरी साइट इतनी धीमी गति से जवाब दे रही थी, हालांकि सर्वर संसाधन ठीक हैं, मैंने आखिरकार अपाचे स्थिति की जांच की और पाया:
78 requests/sec - 0.7 MB/second - 8.5 kB/request
256 requests currently being processed, 0 idle workers
ऐसा प्रतीत होता है कि मेरी अपाचे सचमुच कनेक्शन के साथ अधिकतम है। मेरी साइट पर जाने की कोशिश करने वाला कोई भी व्यक्ति "प्रतीक्षा सूची" में डाल देता है जब तक कि अपाचे फिर से मुक्त नहीं हो जाता।
ऐसा लगता है कि मेरे पास दो विकल्प हैं।
ए) अधिकतम कनेक्शन सीमा 256 से ऊपर उठाएं। हालांकि इस लेख के अनुसार यह इतना आसान नहीं है:
डिफ़ॉल्ट रूप से, MaxClients पैरामीटर 256 की कठिन सीमा में संकलित है। हालांकि अपाचे को फिर से जमा करके इसे बदला जा सकता है। कुछ वितरण, या होस्टिंग कंपनियां इस सीमा को बहुत अधिक मान के लिए बढ़ाती हैं, जैसे कि बड़े भार से निपटने के लिए 512 या 1024।
बी) स्क्रिप्ट का पता लगाएँ जो बहुत अधिक समय ले रहे हैं। यह मुझे बहुत अधिक मुश्किल लगता है, क्योंकि अधिकांश अपाचे प्रक्रियाएं बस दिखाई देती हैं और फिर से गायब हो जाती हैं। इसके अलावा, मेरी साइटें PHP स्क्रिप्ट बहुत अच्छी तरह से अनुकूलित की जाती हैं ... और एक बार फिर, सर्वर संसाधन ठीक हैं:
Server load 2.69 (8 CPUs)
Memory Used 25.33% (2,039,108 of 8,048,804)
Swap Used 1.32% (54,156 of 4,095,992)
कौन सा विकल्प (यदि उनमें से कोई भी) मुझे चुना जाना चाहिए और मुझे यह कैसे करना चाहिए?
संपादित करें
अधिक जानकारी: सर्वर संस्करण: अपाचे / 2.2.23 (यूनिक्स) mod_ssl / 2.2.23 OpenSSL / 1.0.0-fips DAV / 2 mod_auth_passthrough / 2.1 mod_bwlimited / 1.4.2.2635
HTTP कॉन्फ़िडेंस: http://pastebin.com/yBeLt6mP
पैतृक अनुरोध नमूना: http://pastebin.com/vzUVDMPR
पाठ-लपेटें टॉगल करें यदि पेस्ट-डिब्बे अजीब दिखा।