2009-11-28 10 views
5

मेरे पास 1.9 एमबी PHP लाइब्रेरी है जिसमें मैं अपनी स्क्रिप्ट की शुरुआत में शामिल हूं। इसमें मेरी वेबसाइट के लिए आवश्यक सभी डेटाबेस ऑब्जेक्ट्स, विधियां आदि शामिल हैं। इसे हर बार शामिल करने के लिए 0.1 से 0.3 तक लगता है।मैं PHP में 'शामिल() एस' के प्रदर्शन में सुधार कैसे कर सकता हूं?

मैं इस फ़ाइल के बाइटकोड को कैश करने के लिए eAccelerator का उपयोग करता हूं। इस 'शामिल' के प्रदर्शन को अनुकूलित करने के लिए मैं और क्या कर सकता हूं?

+3

उत्सुकता से, इसमें कितना समय लगता है) शेष पृष्ठ उत्पन्न करें, बी) पृष्ठ डाउनलोड करें? –

+0

पृष्ठ और उसके द्वारा लोड की जाने वाली जानकारी की मात्रा के आधार पर, शेष पृष्ठ उत्पन्न करने के लिए 0 से 0.5 तक लग सकते हैं, और आमतौर पर लगभग 0.2s-1.1s। पेज को डाउनलोड करने के लिए .. मैं जितना ज्यादा पेज से बाहर कर सकता हूं उसे निचोड़ना चाहता हूं। : पी –

उत्तर

8

इसे मॉड्यूल में विभाजित करें और केवल तभी लोड करें जब आवश्यक हो। मुझे लगता है कि वास्तव में प्रदर्शन में सुधार करने का एकमात्र तरीका है, मैं एक ही स्थिति में हूं और केवल इसे हल किया है। यह मेरे दिमाग में बहुत अधिक कोड शामिल है। मैं आपको एक बियर शर्त दूंगा कि आपको हर संदर्भ में सभी 1.9 एमबी कोड की आवश्यकता नहीं है।

+0

मुझे लगता है कि अगर हमने वह शर्त बनाई है तो आप शायद जीतेंगे। : पी मैंने लाइब्रेरी को मॉड्यूल में विभाजित करने के बारे में पढ़ा है। डिजाइन सवाल अब बन गया है: फाइलों को विभाजित करने के लिए सबसे अच्छी पद्धति क्या है? मैं कक्षाओं को शामिल करने के लिए __autoload विधियों में निर्मित PHP का उपयोग करने पर भी विचार कर रहा हूं, लेकिन ऐसा लगता है कि यह थोड़ा अधिक ओवरहेड है। –

+2

इसका उत्तर देने के लिए, आपको थोड़ा सा विस्तार करना होगा कि यह किस प्रकार की परियोजना है और पुस्तकालय में क्या शामिल है। आम तौर पर, जाहिर है, आप उन्हें अक्सर उपयोग किए जाने वाले कार्यों/वस्तुओं के समूहों में विषयगत रूप से विभाजित करेंगे। यहां छवि कार्य, सुरक्षा कार्य वहां ... लेकिन यह ऐसा कुछ है जो आखिरकार आप तय कर सकते हैं। –

+0

यह कार्यक्षमता के कुछ अलग-अलग सबसेट के साथ एक बड़ी परियोजना है। पुस्तकालय में छवियों, सुरक्षा, दोस्ती, उपयोगकर्ता, समूह, संदेश, 'पोक्स' इत्यादि के ऑब्जेक्ट/विधियों और डेटाबेस स्कीमा मानचित्र शामिल हैं। मुझे डर है कि प्रत्येक पृष्ठ पर उपयोग की जाने वाली कार्यक्षमता अच्छी तरह से मैप नहीं की जाती है, इसलिए मानचित्र बनाना आवश्यक पुस्तकालयों के अनुरोधों की मेरी प्राथमिक चिंता होगी क्योंकि यह मेरी सबसे बड़ी टाइमिंक होगी। –

संबंधित मुद्दे

 संबंधित मुद्दे