मेरे पास php 5.4
/mysql
वेबसाइट प्रति दिन 5 मिलियन हिट के साथ है, nginx
और php-fpm
के साथ लिनक्स सर्वर पर चल रही है। डेटाबेस एक अलग सर्वर पर स्थित है।htmlspecialchars() CPU उपयोग को कम करने का कोई तरीका?
मैंने देखा है, कि सर्वाधिक व्यस्त समय में मेरी वेब सर्वर लोड 15, सामान्य 4 के बजाय ट्रैक्टर कोर प्रोसेसर के लिए हो जाता है। मैं xdebug
और xhprof के साथ अपने php आवेदन प्रोफाइल है, और देखा, कि सीपीयू काम के 90% Twig
टेम्पलेट्स है कि मैं डेटा को प्रदर्शित करने के लिए उपयोग में htmlspecialchars()
समारोह द्वारा किया जाता है। प्रति पृष्ठ 100 से 1000 htmlspecialchars()
कॉल कभी-कभी होते हैं। मैंने अनजान भागने को कम करने की कोशिश की है, लेकिन फिर भी इसे टाला नहीं जा सकता है।
वहाँ किसी भी तरह से मैं htmlspecialchars()
समारोह द्वारा CPU उपयोग को कम कर सकते है? शायद इसके लिए php में किसी प्रकार का कैशिंग है? या कोई और रास्ता है?
यदि आप इतना डेटा से बचते हैं, तो शायद इसे स्टोर करने के लिए बेहतर यह पहले से बच निकला है? –
@Artjom Kurapov, अधिकांश डेटा उपयोगकर्ताओं द्वारा जोड़ा जाता है। उन्हें संपादित करने के लिए, मुझे इसे अनदेखा करना होगा और फिर इसे फिर से बचाना होगा, जो वास्तविक दर्द होगा। यही कारण है कि केवल मामलों में से एक है ... –
आप CPU पर कम कर रहे हैं, लेकिन नहीं भंडारण स्थान पर, आप स्टोर कर सकते हैं यह दोनों को कोई अनपेक्षित बच गए हैं। एक बार बचें, जब इसे अपडेट किया जाए, और जब भी उपयोगकर्ता संपादित करना चाहता है, तो मूल का उपयोग करें। यह कुछ है जो मैंने मार्कडाउन के साथ उपयोग किया था और मैं परिणामों से संतुष्ट था। – Maerlyn