पीएचपी फ्लश: कितनी बार और उत्तम आचरण

वोट
23

मैं तो बस इस पोस्ट को पढ़ने के समाप्त: https://developer.yahoo.com/performance/rules.html#flush और पहले से ही अपने पृष्ठ लोड (सिर, सीएसएस, शीर्ष बैनर / खोज / एनएवी) के ऊपरी भाग के बाद एक फ्लश को लागू किया है ।

वहाँ किसी भी प्रदर्शन फ्लशिंग में मारा है? वहाँ यह भी अक्सर कर के रूप में ऐसी बात है? सर्वोत्तम प्रथाओं क्या हैं?

मैं डेटा के लिए एक बाहरी एपीआई हिट करने के लिए जा रहा हूँ, तो यह इतना है कि उपयोगकर्ता है कि डेटा वापस आने के लिए इंतज़ार कर रहे नहीं है समझ में पहले से फ्लश करने के लिए होगा, और कम से कम पहले से कुछ डेटा प्राप्त कर सकते हैं?

09/12/2008 को 14:51
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


4 जवाब

वोट
19

तकनीक का वर्णन किया अच्छा लग रहा है, लेकिन कई नुकसान है:

1) PHP स्क्रिप्ट आरंभ और अंत के बीच के समय छोटे प्रसारण समय की तुलना में है; भी, यह आपके स्रोत के अनुसार, 0.5 सेकंड के बारे में उपयोगकर्ता को बचाता है। आप के लिए समय की है कि वह बड़ी मात्रा में है?

2) इस तकनीक gzip उत्पादन बफरिंग साथ काम नहीं करता

3) यदि आप भी अक्सर फ्लश, आप फ्लश पर एक लगभग खाली पैकेट, वास्तव में लोड हो रहा है समय में वृद्धि हो सकता है (धीमी गति से, शोर कनेक्शन पर भेज रहे होंगे)।

4) एक बार आप फ्लश, आप किसी भी अधिक हेडर नहीं भेज सकते हैं

5) (नाबालिग मुद्दा) सर्वर प्रतिक्रिया chunked एन्कोडिंग, ग्राहक पहले से आकार पता नहीं होगा जिसका मतलब है कि में आ जाएगा (इसलिए प्रदर्शित नहीं करेगा "एक्स% किया" जब कोई फ़ाइल डाउनलोड करना)।

दूसरी ओर, यदि आप अपनी स्क्रिप्ट एक बहुत अधिक समय लगा (20+ सेकंड) के लिए चलाने के लिए उम्मीद है, यह (उदाहरण के लिए रिक्त स्थान) कुछ डेटा भेजने के लिए बाहर समय कनेक्शन से ब्राउज़र रखने के लिए जरूरत हो सकती है।

09/12/2008 को 15:10
का स्रोत उपयोगकर्ता

वोट
5

नीचे की ओर है कि आप इसे afaik निस्तब्धता के रूप में सामग्री gzip नहीं कर सकते हैं और साथ ही है, इसलिए मैं हमेशा फ्लश के बजाय gzip को प्राथमिकता दी है।

माइक्रोसॉफ्ट इंटरनेट एक्सप्लोरर के कुछ संस्करणों के बाद ही वे उत्पादन के 256 बाइट्स प्राप्त हुआ है पृष्ठ प्रदर्शित करने शुरू कर देंगे, ताकि आप उन ब्राउज़रों पृष्ठ प्रदर्शित करने के लिए निस्तब्धता से पहले अतिरिक्त व्हाइट भेजने की जरूरत हो सकती है।

यह इस विचार नहीं के रूप में यह लगता है गद्दी अधिक डेटा बहुत उपयोगी नहीं है बनाता है।

09/12/2008 को 14:58
का स्रोत उपयोगकर्ता

वोट
3

मुझे लगता है कि वास्तव में एक फ्लश ट्यूनिंग तंत्र है। ब्राउज़र केवल सामग्री डाउनलोड करने के लिए (ब्राउज़र पर निर्भर करता है) के बारे में 8 धागे का उपयोग करें। आप 15 छवियों है, तो ब्राउज़र 8 चित्र डाउनलोड करने शुरू कर देंगे और कुछ और डाउनलोड नहीं होगा उनमें से एक है जब तक पूरा करता है, तो यह अगले छवि, आदि डाउनलोड करने शुरू कर देंगे हेडर के बाद निस्तब्धता करके, आप मूल रूप से ब्राउज़र कह रहे हैं क्या यह डाउनलोड शुरू कर सकते हैं। समय शेष पृष्ठ वितरित किया जाता है (यानी .5 सेकंड बाद) से, ब्राउज़र पहले से ही CSS और JavaScript फ़ाइलों डाउनलोड पूरा हो सकता है। यह ऊपर अन्य सामग्री के लिए डाउनलोड धागे मुक्त होगा।

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

30/03/2010 को 14:11
का स्रोत उपयोगकर्ता

वोट
2

Piskvor के दृष्टिकोण के बाद - अगर आप उम्मीद कर रहे हैं एक 20 + प्रतीक्षा करें, आप एक बुनियादी पृष्ठ (जो gzipped जा सकता है) प्रदान करने और जब धीमी प्रक्रिया समाप्त हो गया है पेज अद्यतन करने के लिए अजाक्स का उपयोग बेहतर हो सकता है। आप स्थिर HTML के बुनियादी उपयोगिता का उल्लंघन करने, हालांकि शुरू करते हैं।

09/12/2008 को 15:17
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more