मैं एक ऐसे स्थान पर काम करता हूं, जहां हमारे प्रत्येक आंतरिक अनुप्रयोग एक व्यक्तिगत टॉमकैट उदाहरण पर चलता है और एक विशिष्ट टीसीपी पोर्ट का उपयोग करता है। सर्वर पर किसी भी अन्य प्रक्रिया के साथ पोर्ट नंबर टकराव से बचने के लिए इन ऐप्स के लिए सबसे अच्छा IANA पोर्ट रेंज क्या होगा?
Http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml पर आधारित , ये विकल्प हैं जैसे मैं वर्तमान में उन्हें देखता हूं:
- सिस्टम पोर्ट (0-1023): मैं इनमें से किसी भी पोर्ट का उपयोग नहीं करना चाहता क्योंकि सर्वर इस रेंज में मानक पोर्ट पर सेवाएं चला रहा हो सकता है
- उपयोगकर्ता पोर्ट (1024-49151): यह देखते हुए कि आवेदन आंतरिक हैं, मेरा इरादा हमारे किसी भी एप्लिकेशन के लिए एक नंबर आरक्षित करने के लिए IANA का अनुरोध करने का नहीं है। हालाँकि, मैं उसी पोर्ट की संभावना को कम करना चाहूंगा जिसका उपयोग किसी अन्य प्रक्रिया द्वारा किया जा रहा है, उदाहरण के लिए, 1521 पर Oracle नेट श्रोता।
- डायनेमिक और / या प्राइवेट पोर्ट (49152-65535): यह रेंज कस्टम पोर्ट नंबर के लिए आदर्श है। मेरी एकमात्र चिंता यह है कि अगर ऐसा होता तो:
ए। मैं पोर्ट X
b का उपयोग करने के लिए अपने एक एप्लिकेशन को कॉन्फ़िगर करता हूं । एप्लिकेशन कुछ मिनट या घंटों (ऐप की प्रकृति के आधार पर) के लिए नीचे है, पोर्ट को थोड़ी देर के लिए अप्रयुक्त छोड़कर,
सी। ऑपरेटिंग सिस्टम पोर्ट संख्या X को दूसरी प्रक्रिया के लिए आवंटित करता है, उदाहरण के लिए, जब यह प्रक्रिया क्लाइंट के रूप में दूसरे सर्वर के लिए टीसीपी कनेक्शन की आवश्यकता होती है। यह दिया गया सफल होता है कि यह डायनेमिक रेंज के भीतर आता है और एक्स वर्तमान में अप्रयुक्त है जहां तक ऑपरेटिंग सिस्टम का संबंध है, और
डी। ऐप प्रारंभ करने में विफल रहता है क्योंकि पोर्ट X पहले से ही उपयोग में है