2011-03-21 6 views
6

मैं देखता हूं कि कैसे Azure समय-समय पर मेरे कार्यकर्ता की भूमिका की स्थिति की जांच करता है, लेकिन कैसे?Azure वर्कररोल की स्थिति को कैसे जांचता है?

ऐसा करने के लिए RoleEntryPoint में कोई विधि नहीं है, और मैं ILSpy के साथ Microsoft.WindowsAzure.ServiceRuntime के वर्गों पर एक नज़र डाल रहा हूं लेकिन मुझे कुछ भी प्रासंगिक नहीं दिख रहा है।

कोई विचार?

धन्यवाद।

उत्तर

4

यहां blog post है जो बताती है कि विंडोज़ एज़ूर फैब्रिक कंट्रोलर उदाहरण के स्वास्थ्य पर नज़र रखता है।

इसके अलावा, नियंत्रक प्रत्येक 15 सेकंड में स्टेटस चेक ईवेंट कहता है, जिसे आप संभाल सकते हैं। यदि आप लोड बैलेंसर से बाहर खींचना चाहते हैं (हो सकता है कि आपके इंस्टेंस में कुछ आंतरिक डेटा के आधार पर), तो आप RoleEnvironmentStatusCheckEventArgs ऑब्जेक्ट पर SetBusy() को कॉल करें। यह आपको अगली चेक तक लोड बैलेंसर से बाहर ले जाता है।

+0

धन्यवाद, बिल्कुल वही जो मैं खोज रहा था। – vtortola

+0

आपके द्वारा लिंक किया गया ब्लॉग पोस्ट यह नहीं कहता कि मतदान अवधि 15 सेकंड है। यह वास्तव में अवधि पर कोई जानकारी नहीं देता है। – Dai

+0

मैंने कभी नहीं कहा कि लेख समय अवधि का उल्लेख करता है - असल में, 2011 में, मुझे यह भी पता नहीं था कि एक प्रकाशित लेख का उल्लेख है कि (6 साल बाद जांचने में थोड़ा मुश्किल है)। लेकिन वहां बहुत सारे वर्तमान लेख हैं जो इसका जिक्र करते हैं। जैसे [यह एक] (https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-custom-probe-overview)। –

4

मुझे लगता है कि तंत्र WebRoles

के लिए इस्तेमाल एक

Azure RoleEnvironment एक StatusCheck करता है के रूप में एक ही है - देखना http://msdn.microsoft.com/en-us/library/microsoft.windowsazure.serviceruntime.roleenvironment.statuscheck.aspx

आप सेवा आप तो SetBusy फोन व्यस्त हैं (बताने के लिए चाहते हैं) जब यह घटना

+0

धन्यवाद, बहुत उपयोगी। – vtortola

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