ASP.Net वेबसाइट धीरे-धीरे क्यों लोड हो सकती है? [बन्द है]


9

वास्तविक रूप से, मैंने कई .aspx वेबसाइट देखी हैं, जिनमें प्रत्येक पृष्ठ के लिए महत्वपूर्ण मात्रा में लोड समय की आवश्यकता होती है।

क्या मेरा अनुभव अद्वितीय है?

यदि नहीं, तो ASP.Net वेबसाइट धीरे-धीरे क्यों लोड हो सकती है?

संपादित करें: यह अब लगभग 7 साल बाद (12/29/2017) है। अच्छी खबर यह है कि मैं इस समस्या को ज्यादा देर नहीं देखता, हो सकता है कि Google ने उन साइटों को दंडित करना शुरू कर दिया जो बहुत धीरे-धीरे लोड होती हैं। मैं अब अच्छे परिणामों के साथ ASP.NET MVC का उपयोग करता हूं, वर्तमान में Vultr निजी वर्चुअल सर्वर पर चल रहा है (Azure वैसे भी धीमा था जितना हमने इसे आज़माया था।) अब जो कुछ सबसे खराब अपराधी मैं देख रहा हूं वे Wordpress और Drupal जैसे CMS सिस्टम हैं, जो संभवतः चल रहे हैं। हार्डवेयर जो साइट के ट्रैफ़िक की मात्रा के लिए बहुत धीमा या कम है। -HK1


10
खेलने में कई कारक हो सकते हैं। आप जिस साइट का उपयोग कर रहे हैं, वह बहुत ही कम समय में .NET पर बनाया गया है, और यह आम तौर पर बहुत तेज़ है (शून्य से नीचे / रखरखाव अवधि)। हो सकता है कि उन साइटों के डेवलपर्स आपके लिए बहुत से डेटा को धीमा कर रहे हों, या धीमे कनेक्शन, या अतिभारित सर्वर, आदि आदि। यह भी खेल में धारणा हो सकती है।
22 अप्रैल को wkl

4
@ प्रसव्री आपको अपनी टिप्पणी को एक उत्तर के रूप में जोड़ना चाहिए, क्योंकि आपने वहां सिर पर कील ठोक दी थी।
एडम लेअर

मैंने इस मुद्दे को केवल कोड-पीछे हल किया है, आप यहां देख सकते हैं: http://stackoverflow.com/questions/27339997/how-to-always-your-warm-up-asp-net-websites-webform-mvc ? noredirect = 1 # comment43136405_27339997
VnDevil

जवाबों:


22

पाँच संभावनाएँ जिनके बारे में मैं सोच सकता हूँ (कुछ उन्नत कैशिंग तकनीकों से और इस तरह):


आप एक उदाहरण नहीं दे सकते?
जेफो

1
ViewState इन समस्याओं में भी एक भूमिका निभाता है।
एरिन

1
1) दूसरे शब्दों में, ASP.NET एस्प क्लासिक की तुलना में अधिक संसाधनों का उपयोग करता है?
एचके १

1
मुझे लगता है कि आपके महान उत्तर (या यहां किसी भी अन्य उत्तर) में उल्लेखित एक और आम समस्या धीमी डेटाबेस पहुंच है। मैंने कई "बजट" वेब होस्टिंग कंपनियों (नेटवर्क समाधान, किसी भी नाम का उल्लेख नहीं करने के लिए) का उपयोग किया है और डेटाबेस एक्सेस (एसक्यूएल सर्वर) के कारण कुछ बहुत खराब धीमी गति से गिरावट आई है।
एचके १

8

स्पष्ट रूप से यह जवाब योग्य हो सकता है।

खेलने में कई कारक हो सकते हैं। आप जिस साइट का उपयोग कर रहे हैं, वह बहुत ही कम समय में .NET पर बनाया गया है, और यह आम तौर पर बहुत तेज़ है (शून्य से नीचे / रखरखाव अवधि)।

जिन साइटों पर आप जाते हैं, वहां के डेवलपर आपके लिए कई टन डेटा, या धीमे कनेक्शन, या अतिभारित सर्वर, आदि इत्यादि को आगे बढ़ा सकते हैं। इसके अलावा, शायद खेल में जावास्क्रिप्ट जावास्क्रिप्ट और आप IE चल रहे हैं? या फ़्लैश?


4

यदि आप वास्तव में नहीं जानते हैं कि आप क्या कर रहे हैं, तो ASP.NET WebForms आपको एक फ़ॉर्म पर नियंत्रण हटाकर एक वेब एप्लिकेशन बनाने की अनुमति देता है, यहां तक ​​कि http के स्टेटलेस प्रकृति को छिपाने के लिए भी। यह काम करता है, लेकिन उस तरह का विकास कभी भी कुशल कोड का उत्पादन करने वाला नहीं होता है, खासकर अगर आपके डेटा एक्सेस लेयर में एक अनुक्रमणिका के साथ एक sql एक्सप्रेस डेटाबेस से सब कुछ चुनने वाले उत्पन्न क्वेरीज़ शामिल हैं।

वहाँ तेजी से asp.net वेबसाइटों के बहुत सारे हैं, जो लोग समझते हैं कि वेब अनुप्रयोग वास्तव में कैसे काम करते हैं द्वारा विकसित किए गए हैं। इसमें यह साइट शामिल है - यह ASP.NET MVC का उपयोग करता है जो व्यक्तिगत अनुरोधों से निपटने के लिए बहुत अधिक नियंत्रण प्रदान करता है और .aspx एक्सटेंशन नहीं दिखाता है।


3

यहाँ पर अटकलें लगाई जा रही हैं क्योंकि मैंने उसी पर ध्यान दिया है। मुझे लगता है कि .asp साइटों करते हैं (शब्द नोटिस करते हैं ) के रूप में पर या डेटा केंद्रों में की मेजबानी करने का विरोध स्वयं एक कंपनी के सर्वर पर होस्ट, किया जाना है। इसलिए वे अक्सर हार्डवेयर पर चलते हैं और कनेक्शन वास्तव में हाई स्पीड वेब ट्रैफ़िक के लिए डिज़ाइन नहीं किए जाते हैं। मुझे संदेह है कि शीत संलयन संचालित साइटें भी इससे पीड़ित हैं।


2

जब कोई वेबसाइट लोड होती है (एप्लीकेशन.स्टार्ट इवेंट), तो सब कुछ मेमोरी में लोड होने में समय लगता है। IIS सेटिंग्स के आधार पर, लगभग 20-30 मिनट की निष्क्रियता के बाद, यह अनलोड होगा। मैं GETहर 10+ मिनट में कुछ सेवा किए बिना एप्लिकेशन को लगातार चालू रखने के लिए एक सभ्य तरीके से नहीं आया हूं ।

खराब तरीके से डिज़ाइन किया गया बैकएंड / डटलटेयर कुछ भी धीमी गति से चला सकता है (कोई फर्क नहीं पड़ता कि कंप्यूटर कितनी तेजी से चल रहा है)। प्रोफाइलिंग आपको यह पहचानने में मदद करेगी कि समस्याएं कहां हैं।


1

आप निश्चित रूप से यह कल्पना कर रहे हैं। :)

बहुत सारे कारक किसी भी सॉफ्टवेयर के साथ खेलते हैं। वास्तुकला, कोड प्रवाह की अतिरेक, कोड की गुणवत्ता, आदि बहुत से भी सूचीबद्ध करना शुरू करते हैं।

क्या आप प्रमाण चाहते हैं कि एएसपी उद्यम स्तर के उपयोग के लिए अच्छा है? यह बहुत ही साइट (और सभी एसई) वेबसाइटें ASP.Net - विशेष रूप से MVC का उपयोग करके बनाई गई हैं।

आखिरी बार यह साइट कब धीमी हुई थी? मैं एक साल से अधिक समय से यहां हूं और कभी भी मैंने बड़े पैमाने पर यूजरबेस के बावजूद चीजों को ठगते हुए नहीं देखा।


0

व्यूस्टेट वास्तव में पोस्टबैक को धीमा कर सकता है। यदि आपके पास किसी पृष्ठ पर बड़ी ड्रॉप डाउन सूचियाँ हैं, तो आपको उन पर दृश्य स्थिति का उपयोग नहीं करना चाहिए।

व्यूस्टेट आपको एक स्टेटफुल विनफॉर्म ऐप पर काम करने का बहाना देता है। जो आपको कभी-कभी परेशानी में डाल सकता है।


0

उपरोक्त सभी संभावित सत्य हैं। ASP.NET साइट में प्रदर्शन को प्रभावित करने वाला सबसे बड़ा एकल कारक, जिस पर मैंने काम किया था, वह यह था कि इससे संबंधित सब कुछ पुराना था। .NET फ्रेमवर्क संस्करण, सर्वर, डेटाबेस इन्फ्रास्ट्रक्चर और कोड ही सभी बुरी तरह से उम्र बढ़ने थे।

मुझे संदेह है कि कई ASP.NET साइट कॉर्पोरेट साइट्स हैं। ये बहुत प्यार नहीं करते हैं, क्योंकि वे सिर्फ काम करते हैं । लोगों को उन्हें फिर से लिखना नहीं पड़ता है जब तक कि उन्हें नहीं करना है, जो अक्सर सड़क पर बहुत लंबा समय होता है।

मैं इस साइट है कि मैं काम के साथ उपयोग किया जाता ASP.NET एक विशाल speedup मिला पता सिर्फ ढांचा है, जो बहुत अधिक कुशल JITing और समझदार कैशिंग चूक था के नवीनतम संस्करण में ले जाकर।

दूसरी बात जो मैंने देखी है कि बहुत सारे ASP.NET साइट्स को ठीक से स्केल करने का तरीका नहीं पता है। उनके पास उचित भार संतुलन स्थापित नहीं है क्योंकि वेब उद्यानों के साथ सही ढंग से काम करने के लिए उनकी साइट को डिजाइन करना आम या समुदाय में अच्छी तरह से प्रलेखित नहीं है। यदि आप शुरू से ही वेब उद्यानों के लिए अपनी साइट डिज़ाइन नहीं करते हैं, तो आप IIS में निर्मित स्केल-आउट तंत्र का उपयोग नहीं कर सकते। विंडोज एनएलबी के साथ सॉफ्टवेयर लोड संतुलन बहुत आम नहीं है और प्रबंधन के लिए जटिल है। (यह इस तथ्य से जुड़ा है कि ASP.NET कॉरपोरेट सॉफ़्टवेयर के लिए जाता है, और कंपनी द्वारा प्रबंधित आईटी द्वारा इसे चलाने के बजाय साइट को चलाने वाले पेशेवरों द्वारा प्रबंधित किया जाता है, जो इस सामान को सही तरीके से कॉन्फ़िगर करना जानते हैं।)

F5s के साथ हार्डवेयर लोड संतुलन बहुत महंगा है, लेकिन कॉर्पोरेट नेटवर्क से ASP.NET साइटों को स्केल करने के लिए सबसे आम और सरल तंत्र लगता है। मुझे लगता है कि खुले स्रोत की भीड़ के बीच उम्मीद यह है कि आप स्वतंत्र रूप से उपलब्ध ओपन सोर्स टूल्स का उपयोग करके शुरुआत से ही लोड बैलेंसिंग का निर्माण करते हैं जो स्वचालित रूप से उपयोग के आधार पर स्केल करते हैं। यह ASP.NET दुनिया में आम नहीं है जो मैंने देखा है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.