2015-05-20 8 views
6

मैं ओविन होस्टिंग ट्यूटोरियल के माध्यम से गया और चीजों को ऊपर और चल रहा था, लेकिन जब मैं इंस्टेंसकाउंट -1 को सेट करता हूं, ऐसा लगता है कि सेवा के हर उदाहरण ओपनएन्क विधि में पोर्ट 80 पर सुनने की कोशिश कर रहा है जब यह वेब ऐप को कॉल करता है ।प्रारंभ।विकास क्लस्टर पर ओविन होस्टेड सेवा के कई उदाहरण कैसे चलाते हैं?

मुझे लगता है कि सेवा फैब्रिक बंदरगाहों को गतिशील रूप से प्रबंधित करेगा क्योंकि यह पोर्ट टकराव से बचने के लिए सेवाओं को बढ़ाता है, लेकिन ऐसा नहीं लगता है कि ऐसा हो रहा है।

उत्तर

8

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

स्थानीय क्लस्टर पर, सभी नोड्स एक ही मशीन पर हैं, इसलिए यदि वे एक सामान्य HTTP उपसर्ग साझा करने का प्रयास करते हैं, तो वे वास्तव में संघर्ष करेंगे। इससे बचने के लिए, बस स्थानीय स्टेटमेंट के लिए अपनी स्टेटलेस सेवाओं के लिए InstanceCount सेट करें।

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

नतीजतन, सामान्य पैटर्न एक पूर्वनिर्धारित बंदरगाह पर सुनकर आपके आवेदन के लिए एक स्टेटलेस फ्रंट-एंड होना है, जो तब अन्य सेवाओं पर अनुरोधों को रिले करने के लिए नाम समाधान करता है। उन दूसरी-स्तरीय सेवाएं प्लेटफ़ॉर्म द्वारा गतिशील रूप से असाइन किए गए पोर्ट पर सुन सकती हैं।

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