2015-05-15 6 views
12

मैं Azure में एक वीएम चला रहा हूं जिस पर मेरी एक ऐसी सेवा है जो बहुत से आउटगोइंग http क्लाइंट कॉल करता है। कुछ समय बाद (लगभग 10 मिनट) जब सेवा ने लगभग 5000-10000 कॉल किए हैं, तो अचानक कनेक्शन से अनुरोध के रूप में कनेक्शन को अस्वीकार कर दिया जाता है।क्या अज़ूर आउटगोइंग कनेक्शन सीमित कर रहा है

स्थानीय रूप से एक ही सेवा चलाते समय (कई वातावरण और कंप्यूटरों में प्रयास किया जाता है) यह बिना किसी त्रुटि के चलाता है। हम अनुरोध के लिए एचटीपी क्लाइंट क्लास का उपयोग कर रहे हैं। अनुरोध 3 कार्यों में समवर्ती रूप से चल रहे हैं।

क्या Azure में आउटगोइंग कनेक्शन की मात्रा पर कुछ सीमाएं हैं जिनके बारे में मुझे अवगत होना चाहिए?

+0

क्या आप वाकई HttpClient को ठीक से निपटाने के द्वारा कोई थ्रेड भुखमरी नहीं कर रहे हैं? आप जिस वीएम आकार का उपयोग करते हैं उसका क्या उपयोग होता है? मुझे आपके स्थानीय पीसी की तुलना में छोटे (जिसमें 1 कोर और 1.75 जीबी राम है) पर संदेह है, जहां आपके पास कम से कम 4 कोर हैं? धन्यवाद। –

+0

हमारे कोड प्रतीत नहीं होता है। जब हम सेवा चला रहे हैं और वीएम पर त्रुटियां प्राप्त कर चुके हैं तो मैंने वीएम पर क्रोम खोला और वहां से आरईएसटी कॉल की कोशिश की और एक ही त्रुटि मिली ... तो यह एक मशीन/आधारभूत संरचना समस्या है, कोड प्रति से नहीं। –

+0

यदि यह एक बंदरगाह/थ्रेड भुखमरी है तो इससे कोई फ़र्क नहीं पड़ता कि आप एचटीपी स्टैक तक कैसे पहुंचते हैं, फिर भी आप एक ही व्यवहार करने जा रहे हैं। समवर्ती टीसीपी कनेक्शन के लिए हमारी सीमा 500K है। एकमात्र अन्य चीज जिसे मैं कल्पना कर सकता हूं वह यह है कि आप कुछ डीडीओएस अलर्ट ट्रिगर करते हैं और आप इससे सीमित हो जाते हैं। जांचने के लिए चीजें हैं: 1) क्या आपके पास उस पल में पर्याप्त बीडब्ल्यू है? 2) क्या आपके पास पर्याप्त धागे उपलब्ध हैं 3) एक अलग भूमिका आकार आज़माएं और देखें कि यह वही व्यवहार करता है या नहीं। फिर यह मेरे डीडीओएस सिद्धांत की पुष्टि करता है। यदि नहीं, तो यह कुछ और है। –

उत्तर

-1

यहां Azure page for service limits है। यह कॉल प्रति टाइम फ्रेम निर्दिष्ट नहीं करता है लेकिन टीसीपी के लिए 500 के रूप में अधिकतम नेटवर्क कनेक्शन सेट करता है और उस तालिका के नीचे "वेब ऐप्स (वेबसाइट्स) सीमाओं" के लिए सेटिंग होती है, जिन पर आप पहुंच सकते हैं।

-2

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

-1

वीएम या वेब भूमिका पर 500 के टीसीपी कनेक्शन की सीमा है (दृश्यों के पीछे एक वेब भूमिका भी वीएम पर बैठती है)। आप Azure limits

के लिए नीचे दिए गए लिंक का उल्लेख कर सकते हैं जैसे आपका आवेदन आउटबाउंड अनुरोध करने पर भारी है। इस तरह के परिदृश्य में, आप इस टुकड़े को रद्द करना और 'Azure functions' Azure Functions का उपयोग करना चाहते हैं जो आपको एक सर्वर रहित आर्किटेक्चर क्षमता प्रदान करता है।

0

आप लिनक्स वी एम का उपयोग कर रहे हैं, तो

Ulimit - d cmd will give the value. The default is 1024 

आप स्थायी रूप से जोड़कर इस मूल्य बदल सकते हैं खुली फ़ाइलों/सॉकेट पर सीमा की जांच करने के लिए नीचे दिए गए आदेश पर अमल निम्नलिखित में आपकी सीमा.कॉफ़ फ़ाइल

*soft nofile 65536 
*hard nofile 65536 
संबंधित मुद्दे