2012-02-18 10 views
19

में एक ही उदाहरण पर एकाधिक भूमिकाएं एक ही उदाहरण में एकाधिक भूमिकाएं तैनात करना संभव है?विंडोज़ Azure

मेरे पास तीन वेब भूमिकाएं हैं (एएसपीएनटी एमवीसी 3 में वेबसाइट, और दो डब्ल्यूसीएफ सेवा उदाहरण) और दो कार्यकर्ता भूमिकाएं (विंडोज़ सेवाएं)।

इस एप्लिकेशन के लिए लोड बहुत छोटा है, इसलिए मैं विंडोज़ एज़ूर में इतने सारे उदाहरण नहीं बनाना चाहता हूं और अब सभी उदाहरणों के लिए भुगतान नहीं करना चाहता हूं। इसके बजाय मैं अपने सभी एप्लिकेशन को एक ही उदाहरण में तैनात करना चाहता हूं और बाद में इसे बदलना चाहता हूं अगर मुझे अपने आवेदनों से कुछ आय मिल जाएगी।

मैं Google पर और कुछ मंच पदों पाया की तुलना में यह संभव है और यह की तुलना में कुछ संभव नहीं है ... लेकिन मैं जानकारी कैसे करना है नहीं मिल सकता है ...

तो दो सवाल: क्या यह संभव है? मैं इसे कैसे कर सकता हूं?

उत्तर

14

@ साइमन की तुलना में थोड़ा अलग जवाब ... एक भूमिका वास्तव में एक विंडोज सर्वर 2008 वीएम के लिए एक टेम्पलेट है (मेरा जवाब this SO question पर भी देखें)। प्रत्येक भूमिका में एक या अधिक उदाहरण होते हैं, और आप जो कुछ भी चाहते हैं उसे आप चला सकते हैं।

आप अपनी वेबसाइट और अपनी सभी डब्ल्यूसीएफ सेवाओं को एक ही भूमिका में पूरी तरह से चला सकते हैं। अब आप एक ही स्केल इकाई के रूप में अपने आवेदन को ऊपर/नीचे (वीएम आकार) और आउट/इन (उदाहरणों में से #) स्केल करेंगे। यदि, कहें, तो आपकी डब्ल्यूसीएफ सेवाएं सीपीयू-गहन हैं, जिससे वीएम उदाहरण आपके वेब आगंतुकों के लिए धीमा हो जाते हैं, आपको उन आगंतुकों को संभालने के लिए पर्याप्त पैमाने पर स्केल करना होगा।

एक बार जब आप एक महत्वपूर्ण ट्रैफिक लोड तक पहुंच जाते हैं, तो अलग-अलग भूमिकाओं पर विचार करना उचित होता है। इस तरह, आप VM आकार और मात्रा प्रति भूमिका पर निर्णय ले सकते हैं। हो सकता है कि आपके पास वेबसाइट पर आपके उपयोगकर्ता यातायात को संभालने के लिए वेब भूमिका के 2 या 3 छोटे उदाहरण हों, और शायद डब्ल्यूसीएफ सेवाओं को संभालने के लिए एक वर्कर भूमिका के 2 मध्यम उदाहरण (जैसे एक उदाहरण के रूप में)। आपके पास जितनी अधिक भूमिकाएं हैं, आपके पास फाइनर-अनाज स्केलिंग है, लेकिन आपको प्रत्येक भूमिका के कम से कम एक उदाहरण को चलाना होगा, जो आपके "सिस्टम को आराम से" बेसलाइन लागत को बढ़ाता है।

+0

यदि मैं एक उदाहरण में वेबलर के रूप में अपनी सभी वेबसाइटों और डब्ल्यूसीएफ सेवाओं को तैनात करता हूं - मैं सिस्टम के हिस्सों को फिर से तैनात नहीं कर सकता? सही बात? उदाहरण के लिए यदि मैं डब्ल्यूसीएफ सेवाओं में बदलाव करना चाहता हूं - मुझे सभी को पुन: नियोजित करना होगा: डब्ल्यूसीएफ सेवाएं और वेबसाइट? –

7

नहीं, भूमिकाएं हैं और प्रत्येक व्यक्ति एक संपूर्ण वीएम लेता है। हालांकि आप एक ही भूमिका में वेबसाइट को तैनात कर सकते हैं, जो आपको अपने सभी एमवीसी और डब्ल्यूसीएफ ऐप्स को एक ही वेब भूमिका में तैनात करने की अनुमति देगा। आपको sites element in the ServiceDefinition पर वेबसाइटें जोड़ने की आवश्यकता है। यह कैसे किया जाता है इस पर कुछ ब्लॉग पोस्ट होने लगते हैं - here और here

कार्यकर्ता भूमिकाओं के लिए, मेरा सुझाव है कि आप एक एकल कार्यकर्ता भूमिका बनाएं और उन भूमिकाओं में किए गए कार्यों को गठबंधन करें, जैसे प्रत्येक कतार की निगरानी के लिए एक अलग थ्रेड शुरू करना। यूजीनियो पेस द्वारा यह StackOverflow answer

मैं वेब भूमिका में कार्यकर्ता भूमिका कार्यक्षमता को गठबंधन करने की कोशिश करने की अनुशंसा नहीं करता। इसके अलावा वास्तुशिल्प भावना नहीं, भौतिक आधारभूत संरचना (आईआईएस बनाम आईआईएस) को समझना, ऐसे संभावित मुद्दे हैं जैसे चलने वाले धागे को समाप्त करने के साथ जब कार्यकर्ता भूमिकाएं रीसायकल (आईआईएस द्वारा शुरू नहीं किया गया थ्रेड अचानक समाप्त हो सकता है)

+0

यह strcitly सच नहीं है azure करने के लिए। चूंकि 'user728584' ने एक वेब भूमिका की ओर इशारा किया है हमेशा एक कार्यकर्ता भूमिका भी होती है। अब - मुझे जरूरी नहीं है कि दोनों को गठबंधन करना एक अच्छा विचार है - लेकिन यह निश्चित रूप से संभव है क्योंकि रन() विधि के रूप में हर वेब भूमिका - http://www.31a2ba2a-b718-11dc-8314-0800200c9a66.com /2010/12/how-to-combine-worker-and-web-role-in.html –

+0

वेब और कार्यकर्ता भूमिकाओं का मिश्रण एक हैक है। क्या .NET असेंबली की भूमिका की परिभाषा है या कैसे Azure कपड़े इसके साथ संबंधित है? उदाहरणों से पता चलता है कि यह * काम करने के लिए * लगता है, आपको समझना होगा कि कपड़े कैसे बंद करता है, रीसायकल, निगरानी आदि। मैं उन विवरणों को समझ नहीं पा रहा हूं लेकिन संदेह है कि, एम, 'मुद्दे' –

+2

भूमिका की परिभाषा है "आभासी मशीन।" और कोई भी हैक नहीं है, एक सर्वर में कार्यक्षमता संयोजन (भौतिक या वर्चुअल)। लोग वर्षों से ऐसा कर रहे हैं। विंडोज़ एज़ूर में, यह आपकी स्केलेबिलिटी और उपलब्धता की डिग्री के नीचे आता है। एकाधिक उदाहरण के साथ एक ही भूमिका में वेबसाइट और पृष्ठभूमि कार्यों को चलाने के लिए कोई हैक नहीं है, जैसे कि यह अलग-अलग वीएम में कार्यक्षमता को अलग करने के लिए हैक नहीं है, प्रत्येक स्वतंत्र रूप से स्केल किया जाता है। –

2

इस ब्लॉग पोस्ट http://www.31a2ba2a-b718-11dc-8314-0800200c9a66.com/2012/02/combining-multiple-azure-worker-roles.html

'एक Azure वेब भूमिका में एकाधिक Azure कार्यकर्ता भूमिकाओं का मेल' मुझे लगता है यह आप क्या करने की जरूरत है चेक बाहर ...http://www.31a2ba2a-b718-11dc-8314-0800200c9a66.com/2010/12/how-to-combine-worker-and-web-role-in.html

HTH

4

चेक बादलों के इस प्रकरण:

इसके अलावा वेन अपने ब्लॉग पर इस की भिन्नताएं होती हैं। आप एक ही उदाहरण में कुछ वेब भूमिका डाल सकते हैं। कार्यकर्ता भूमिका आप डेटा को काम करने के लिए हमेशा कई धागे डाल सकते हैं।

http://channel9.msdn.com/Shows/Cloud+Cover/Cloud-Cover-Episode-37-Multiple-Websites-in-a-Web-Role

ध्यान दें कि हर बार जब आप कोई नया संस्करण अपलोड आप azure सारे वेब भूमिकाओं/कार्यकर्ता भूमिकाओं अपलोड करने की आवश्यकता फिर से