कुछ पृष्ठभूमि ....मैं स्थानीय रूप से/आधार पर एक एज़ूर कार्यकर्ता की भूमिका कैसे होस्ट करूं?
हम पहली बार के लिए Azure में venturing रहे हैं और बच्चे के चरणों में यह करने के लिए कोशिश कर रहे हैं। अभी के लिए, हमारे पहले ऐप्स अनुरोधों को संसाधित करने के लिए कतारों की निगरानी करने वाले कार्यकर्ता भूमिका निभाने जा रहे हैं (जैसे ईमेल भेजना या कुछ स्क्रीन स्क्रैपिंग करना) और हम अपने ऑन-प्रिमाइसेस एमवीसी ऐप और डब्ल्यूसीएफ सेवाओं से कतारों में शामिल होंगे। हम बाद में एमवीसी ऐप और डब्ल्यूसीएफ सेवाओं को Azure में ले जाएंगे।
हमारी विकास कार्यप्रवाह अनिवार्य रूप से इस (कुछ महत्वहीन तरीकों से संशोधित) प्रकार है:
- स्थानीय स्तर पर विकास करना और कुछ साझा सर्वर पर। स्रोत नियंत्रण में जांचें।
- हर 15 मिनट, सर्वर बनाता है और एक "विकास" पर्यावरण के लिए तैनात निर्माण (सीआई के रूप में दोगुना हो जाता है और मामले में शामिल किया गया है हम स्थानीय के अलावा किसी अन्य "विकास" पर्यावरण को हिट करने की जरूरत है)
- तकनीकी परीक्षक मैन्युअल सर्वर का निर्माण तैनात करने के लिए गति प्रदान आखिरी सफल "देव" टेस्ट पर्यावरण (या वैकल्पिक रूप से, पूर्व-तैनात टेस्ट बिल्ड, डेटाबेस सहित/छोड़कर) में निर्मित है।
- तकनीकी परीक्षकों और व्यावसायिक परीक्षकों ने क्यूए पर्यावरण में अंतिम सफल "टेस्ट" निर्माण (या वैकल्पिक रूप से, पूर्व-तैनात परीक्षण निर्माण, डेटाबेस सहित/छोड़कर) को तैनात करने के लिए मैन्युअल रूप से बिल्ड सर्वर को ट्रिगर किया।
- किसी बिंदु पर हम परिवर्तन को विलय करते हैं जो क्यूए तैनाती के लिए अनुमोदित करता है।
- बाद में हमारे उत्पादन निर्माण सर्वर इस संस्करण को स्टेजिंग के लिए तैनात करते हैं और बाद में हमारे उत्पादन वातावरण में (हम इसे समांतर/स्वतंत्र वातावरण में एन बार होस्ट करते हैं)।
जैसा कि आप बता सकते हैं, हमारे पास आंतरिक समर्थन लोगों के उत्पादन के पहले पहुंचने से पहले हमारे समर्थन के लिए आंतरिक रूप से होस्ट किए गए संस्करण हैं। मैं इनके लिए Azure पर निर्भरता का एक निम्न स्तर पर निर्भरता रखना चाहता हूं। मुझे अलग निर्भरता को पूरा करने की आवश्यकता नहीं है, इसलिए हम Azure Queues और शायद कुछ अन्य तंत्र का उपयोग करना जारी रखेंगे क्योंकि वे उपयोग जारी रखने में आसान हैं, लेकिन हम नहीं चाहते हैं कि हमारे बिल्ड सर्वर को Azure पर तैनात करना पड़े इन वातावरणों में से प्रत्येक के लिए (और वैकल्पिक रूप से उन सभी होस्टिंग के लिए भुगतान करें)।
तो हम अपने कार्यकर्ता भूमिकाओं को ऑन-प्रिमाइज़ पर उचित तरीके से होस्ट कैसे कर सकते हैं, जहां हम वास्तव में उस कोड का परीक्षण कर रहे हैं जो Azure पर तैनात हो जाता है?
सुझाव दिया गया एक विकल्प यह है कि हम एक रैपर/मुखौटा के रूप में कार्यकर्ता भूमिका बनाते हैं और कक्षा पुस्तकालय के अंदर सभी वास्तविक काम करते हैं, जो हमारी योजना थी। हालांकि, हमें "होस्ट" करने की अनुमति देने के लिए फॉलो-अप एक दूसरा रैपर/मुखौटा अनुप्रयोग बनाना होगा जो कार्यकर्ता की भूमिका के समान कार्य करता है, बस एक तरह से जहां हम इसे निर्धारित कार्य या खिड़कियों के रूप में चला सकते हैं सर्वर। आखिरकार, मुझे यह विकल्प पसंद नहीं है क्योंकि जब तक यह स्टेजिंग हिट नहीं करता तब तक पूरी परियोजना का परीक्षण नहीं किया जाता है।
यह जहां हम एक दूसरे आवरण/मुखौटा आवेदन बनाने के समान कुछ करने के लिए है कि के बजाय वर्ग पुस्तकालय बुला कि यह वास्तव में संदर्भ संभव है और कार्यकर्ता की भूमिका में Run()
फ़ंक्शन को कॉल?
ऐसा लगता है कि VS2010 स्थानीय रूप से Azure ऐप्स को डीबग करने के लिए उपयोग करता है। क्या यह कुछ है जो मैं बहुत ही सीमित "सर्वर" तरीके से स्थापित कर सकता हूं (फिर से, ज्यादातर गैर डेवलपर्स के लिए ऐप होस्ट किया गया ताकि वे इसका परीक्षण कर सकें)? अगर मुझे मेरे लिए काम करना है तो मुझे एज़ूर एमुलेटर पर तैनात करने के लिए टीमसिटी या क्रूज़ कंट्रोल (आखिरकार नैन/पावरहेल/आप-नाम-स्क्रिप्ट्स) की आवश्यकता है। – Jaxidian
मुझे उम्मीद है कि मैं आपको समझता हूं: आप निश्चित रूप से उन्हें स्क्रिप्ट के माध्यम से तैनात कर सकते हैं, और उन मशीनों पर क्यूए परीक्षण करने दें। आप रिमोट एज़ूर वीएम एक्सेस के लिए पावर खोल का उपयोग कर सकते हैं। तैनाती या कुछ के लिए आपको वीएस -2010 की आवश्यकता नहीं है। – Vladimir
यदि आपका मतलब है कि मैं एमुलेटर पर तैनात करने के लिए स्क्रिप्ट का उपयोग कर सकता हूं, तो हाँ, आप मुझे समझते हैं। यदि आप अब Azure के बारे में बात कर रहे हैं, तो यह मेरा सवाल नहीं है। फिर, यहां उच्च स्तरीय लक्ष्य परीक्षण उद्देश्यों के लिए "Azure होस्ट" करने में सक्षम है। – Jaxidian