गैर-उत्पादन वातावरण में लोड से संबंधित दुर्घटनाओं को प्रतिलिपि बनाना

हम अपने इंट्रानेट पर एक कस्टम एप्लिकेशन चला रहे हैं और हमें हाल ही में इसे अपग्रेड करने के बाद एक समस्या मिली है जहां आईआईएस 100% CPU उपयोग के साथ लटकता है, जिसके लिए रीसेट की आवश्यकता होती है।

विषय उपयोगकर्ताओं को लटकाने के बजाय, हम एक समाधान निर्धारित करते समय पिछली रिलीज पर वापस आ गए हैं। पहला कदम समस्या को पुन: पेश करना है - लेकिन हम नहीं कर सकते हैं।

यहां कुछ पृष्ठभूमि है:

प्रोड में एक सिंगल वर्चुअलाइज्ड (vmware) वेब सर्वर है जिसमें दो सीपीयू और 2 जीबी रैम है। डेटाबेस सर्वर में 4 जीबी और 2 सीपीयू भी हैं। यह वीएमवेयर पर भी है, लेकिन अलग भौतिक हार्डवेयर है।

सामान्य उपयोग के दौरान आवेदन ठीक चलाता है। W3wp.exe प्रक्रिया सामान्य रूप से betwen 5-20% CPU और लगभग 200 एमबी रैम का उपयोग करती है। सीपीयू और रैम सामान्य उपयोग के तहत थोड़ा उतार-चढ़ाव करते हैं, लेकिन कुछ भी असामान्य नहीं है।

हालांकि, जब हम समस्याओं में भागना शुरू करते हैं, तो रैम नाटकीय रूप से चढ़ता है और सीपीयू 98% (या जितना हो सके) पर आ जाता है। आईआईएस पुनरारंभ करने की जरुरत है, साइट अप्रतिबंधित हो जाती है। ऐप पूल को रीसेट करने से इस स्थिति में कुछ भी नहीं होता है, एक पूर्ण आईआईएस पुनरारंभ की आवश्यकता होती है।

यह रात के दौरान नहीं होता है (कोई उपयोग नहीं)। जब साइट लोड हो रही है तो यह और भी होता है, लेकिन यह गैर-चरम अवधि के दौरान भी हुआ है।

इस समस्या को हल करने के लिए पहला कदम इसे पुन: उत्पन्न कर रहा है। लोड अनुकरण करने के लिए, हम उपयोग को अनुकरण करने के लिए जेएमटर का उपयोग शुरू करते हैं। हमारी लोड स्क्रिप्ट क्रैश के समय के आसपास वास्तविक उपयोग पर आधारित है। जेएमटर का उपयोग करके, हम उपयोग को काफी ऊंचा कर सकते हैं (क्रैश के दौरान 2-3 गुना भार) लेकिन साइट ठीक से व्यवहार करती है। सीपीयू ऊपर है, और साइट सुस्त हो गई है, लेकिन स्मृति उपयोग उचित है और कुछ भी लटक रहा है।

क्या किसी के पास गैर-उत्पादन वातावरण में ऐसी समस्या को पुन: उत्पन्न करने के बारे में कोई सुझाव है? हम वास्तव में त्रुटि को पुन: पेश करना चाहते हैं, समाधान निर्धारित करते हैं, फिर यह सुनिश्चित करने के लिए फिर से परीक्षण करें कि हमने इसे हल कर लिया है। प्रक्रिया के दौरान हमें कई छोटी चीजें मिली हैं जिन्हें हमने सुधार लिया है जो समस्या को हल कर सकते हैं, लेकिन अगर हम समस्या को पुन: उत्पन्न कर सकते हैं और बेहतर संस्करण का परीक्षण कर सकते हैं तो मुझे वास्तव में बहुत अधिक आत्मविश्वास महसूस होगा।

किसी भी उपकरण, तकनीक या सिद्धांतों की बहुत सराहना की!

0
ro fr bn
मुझे लगता है कि आपके पास आईआईएस और/या आपके आवेदन से लॉगिंग क्षमताएं हैं? जब समस्याएं शुरू होती हैं, तो वास्तव में क्या हो रहा है जो इसका कारण बनता है? यह आपके भार-परीक्षण के अनुकरण के लिए अलग कैसे है?
जोड़ा लेखक Andrew Grant, स्रोत
मुझे एक ही समस्या है, अपने वीएमवेयर प्रदर्शन लॉग पर नज़र डालें, एक या दो महीने में मेमोरी देखें, हमारे लिए यह हर 8-10 दिनों में होता है, जब हमारे पास कम रैम होता था तो यह हर छह दिन था। ऐसा लगता है कि एक स्मृति रिसाव है। बिना किसी समस्या के वास्तविक भौतिक सर्वर पर चलने वाली एक ही वेबसाइट थी, यह आईआईएस और वीएमवेयर के साथ एक मुद्दा प्रतीत होता है। अपने प्रश्न का उत्तर देने के लिए, अपने लोड टूल को (सप्ताह) के लिए चलाने का प्रयास करें और परीक्षण सर्वर पर ट्रेसिंग सेट करें। यदि आपको कोई समाधान मिलता है, तो कृपया पोस्ट करें, मुझे कहीं भी नहीं मिला है।
जोड़ा लेखक Mike, स्रोत

2 उत्तर

मेरे पास उत्पादन में एएसपी.NET डीबग करने के बारे में एक लेख है जो कुछ पॉइंटर्स प्रदान कर सकता है ।

0
जोड़ा

आप यह ब्लॉग प्रविष्टि । उसका ब्लॉग आम तौर पर एक अच्छा डीबगिंग संसाधन है।

0
जोड़ा