2015-05-19 11 views
6

जब भी मैं एक एएसपीनेट एमवीसी 5 वेब साइट विकसित कर रहा हूं और कुछ कार्यों को शेड्यूल करने के लिए हैंगफायर का उपयोग कर रहा हूं, इस मामले में केवल एक हर 3 मिनट में हैंगफायर एसक्यूएल प्रश्नों को चलाता रहता है। मुझे इस तथ्य के बारे में पता है कि इस तरह के कार्य को चलाने में केवल कुछ सेकंड लगते हैं (और इसके साथ जुड़े डीबी क्वेरी)।निष्क्रिय

मुझे जिस समस्या का सामना करना पड़ रहा है वह ऐसा लगता है कि हैंगफायर में मेरा SQL सर्वर "कुछ" चल रहा है (मुझे नहीं पता) और मैं SQL सर्वर गतिविधि मॉनिटर में देख सकता हूं कि मेरा CPU हमेशा 20 पर रहता है +% उपयोग और डेटाबेस I/O संचालन (1.2 एमबी/सेकंड औसत) पर हैं। मुझे पता है कि यह हैंगफायर है क्योंकि जब मैं इसे प्रारंभ नहीं करता हूं तो गतिविधि मॉनीटर (और टास्क मैनेजर) कोई अतिरिक्त ओवरहेड नहीं दिखाता है। मैं सभी निर्धारित कार्यों और कुछ भी/जो कुछ भी हैगफायर चला सकता है उसे हटाने के लिए भी चला गया है और फिर भी समस्या बनी रहती है।

मैं इस तरह के उत्पादन में नहीं जा सकता क्योंकि मुझे डर है कि यह प्रदर्शन के मुद्दों का कारण बन सकता है। किसी भी मदद की सराहना की जाएगी, अग्रिम धन्यवाद

+0

पुनः प्रयास प्रयासों पर कोई असफल कार्य? – JOBG

+0

बस एक, बहुत समय पहले (5 महीने), लेकिन कुछ भी नहीं, इससे पहले कि मैंने एसक्यूएल – Luiso

उत्तर

4

डैशबोर्ड कुछ भी नहीं दिखाता है? कोई सीआरओएन/आवर्ती नौकरियां नहीं? डैशबोर्ड प्रमाणीकरण का उपयोग करना? शायद पंजीकृत/लॉग इन उपयोगकर्ता के खिलाफ एक प्रश्न? डेटा राशि संदिग्ध लगती है लेकिन कौन जानता है। मैं हैंगफायर का उपयोग कर रहा हूं। कल निश्चित रूप से यातायात की जांच करेंगे!

संपादित करें: क्षमा करें दोस्तों, एक टिप्पणी होना चाहिए था। डर्न किया गया आईफोन। : -/

जोड़ा गया: मैंने एमवीसी ऐप + हैंगफायर के साथ अपने सर्वर पर थोड़ा सा जांच की। वास्तव में मेरा सीपीयू उपयोग 20-25% पर भी है। तो मैं एक उपयुक्त मॉनिटर अनुप्रयोग के लिए खोज की है, "SQLRanger" नामक एक गंधा छोटे से उपकरण स्थापित किया है और पाया है कि अब तक शीर्ष क्वेरी यह है:

update top (1) HangFire.JobQueue set FetchedAt = GETUTCDATE() 
output INSERTED.Id, INSERTED.JobId, INSERTED.Queue 
where FetchedAt is null 
and Queue in (@queues1) 

तो यह मूल रूप से प्रदर्शन किया जाना अभी बाकी नौकरियों के लिए जाँच hangfire है। अब तक मुझे किसी भी प्रदर्शन के मुद्दों का सामना नहीं हुआ है या हालांकि।

परिशिष्ट: इस मुद्दे को स्पष्ट रूप से कारण होता है - और निवारण - मतदान अंतराल का समायोजन करके, http://docs.hangfire.io/en/latest/configuration/using-sql-server.html

के संबंधित अनुभाग डिफ़ॉल्ट अंतराल 15 सेकंड है, जो रोजगार के शीघ्र प्रसंस्करण लेकिन यह भी निरंतर सर्वर लोड सुनिश्चित करता है देखते हैं। गैर-समय-महत्वपूर्ण अनुप्रयोगों में एक उच्च अंतराल (1 मिनट, 5 मिनट इत्यादि) ठीक होना चाहिए। जानें कि आपको क्या चाहिए और उस पर प्रतिक्रिया दें: तत्काल नौकरी प्रसंस्करण या कम सर्वर लोड के पास चाहिए? यदि पूर्व है, अंतराल को छोटा रखें और आवश्यकता होने पर सर्वर को अपनाने के बारे में सोचें; यदि उत्तरार्द्ध, अंतराल को उच्चतम स्वीकार्य न्यूनतम में बढ़ाएं।

मुझे पूर्व की आवश्यकता है और सर्वर पर नजर रखेगी चाहे वह भार सहन कर सके।

+0

पर किसी भी प्रदर्शन दंड को देखा, यह डैशबोर्ड साफ है, केवल प्रदर्शन ग्राफिक्स दिखा रहा है – Luiso

+0

मुझे लगता है कि इसे ऐसा कुछ होना चाहिए, कुछ प्रकार पुनरावर्ती क्वेरी का, लेकिन मैं क्वेरी को देखने में सक्षम नहीं हूं, मैं इसे एसक्यूएल में भी खोज रहा हूं लेकिन – Luiso

+0

से कोई फायदा नहीं हुआ – LocEngineer

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