स्क्रैच से सर्वर बनाना एक बड़ा काम है। हालाँकि ऐसा करने से आपके प्रोग्रामिंग कौशल में बहुत सुधार हो सकता है और आप इसे अपनी आवश्यकताओं के अनुसार संशोधित कर सकते हैं। यह ट्यूटोरियल एक सर्वर बनाने के लिए पायथन और निम्न स्तरीय सॉकेट प्रोग्रामिंग का उपयोग करेगा ताकि क्लाइंट एक दूसरे के साथ संवाद कर सकें। यह केवल विंडोज़ पर प्रक्रिया को भी कवर करेगा। निर्देशों में कुछ जानकारी दी जाएगी, लेकिन यदि आप केवल कोड चाहते हैं, तो यह आंकड़ों में प्रदान किया गया है। (नोट: यहां प्रस्तुत निर्देश केवल मूल बातें हैं)।
कदम
विधि 1 में से 3: पायथन स्थापित करना
चरण 1. पायथन डाउनलोड करें।
पायथन की मुख्य वेबसाइट पर जाएं और पायथन 2.7.10 डाउनलोड करें। इसके डाउनलोड के बाद डिफ़ॉल्ट सेटिंग्स के साथ पायथन इंस्टॉलर के चरणों के माध्यम से चलाएं। यह लिंक यहां https://www.python.org/download/ दिया गया है।
चरण 2. आईडीएलई (पायथन जीयूआई) चलाएं।
पायथन 2.7 फ़ोल्डर में जाएं और आईडीएलई (पायथन जीयूआई) चलाएं, पायथन अब आपके स्टार्ट मेनू में होना चाहिए जहां आईडीएलई स्थित है।
चरण 3. एक नई फ़ाइल बनाएँ।
नई खुली हुई विंडो के ऊपरी बाएँ कोने में फ़ाइल पर जाएँ और नई फ़ाइल का चयन करें, आपके पास शीर्षक रहित शीर्षक वाली एक खाली विंडो होनी चाहिए।
विधि 2 का 3: सर्वर बनाना
चरण 1. आवश्यक मॉड्यूल आयात करें।
इस कोड के लिए आवश्यक दो मॉड्यूल "सॉकेट" और "थ्रेडिंग" हैं। यह पहली पंक्ति "सॉकेट आयात से *" और अगली पंक्ति "आयात थ्रेडिंग" पर टाइप करके किया जा सकता है।
चरण 2. एक नया धागा बनाएँ।
यह 2 क्लाइंट्स को एक-दूसरे से मिलाने को हैंडल करेगा। थ्रेड ऐसी प्रक्रियाएं हैं जो मुख्य कार्यक्रम के चलने के दौरान चल सकती हैं। ठीक वैसे ही टाइप करें जैसे चित्र में दिखाया गया है। यह वेरिएबल्स को थ्रेड में सेट करेगा ताकि उन्हें बाद में कॉल किया जा सके।
चरण 3. थ्रेड प्रक्रिया बनाएँ।
ग्राहकों को सीधे संवाद करने के लिए आपको एक-दूसरे की जानकारी भेजनी होगी, जिसमें उनका आईपी पता और वे किस पोर्ट का उपयोग कर रहे हैं। ऐसा करने के लिए आपको एक सॉकेट ऑब्जेक्ट बनाना होगा जो "variableName = सॉकेट (AF_NET, SOCK_DGRAM)" के साथ किया जा सकता है। यह एक सॉकेट ऑब्जेक्ट बनाएगा जो यूडीपी प्रोटोकॉल का उपयोग करता है। अगला सॉकेट को अपने आईपी पते पर "रूमसॉकेट.बाइंड ((' ', सेल्फ.पोर्ट)) के साथ एक निश्चित पोर्ट नंबर के साथ बांधें। रिक्त क्षेत्र आपके स्थानीय क्षेत्र नेटवर्क के भीतर आपके अपने पीसी आईपी पते के लिए है और सेल्फ.पोर्ट जब आप इस थ्रेड को कॉल करते हैं तो पोर्ट नंबर शामिल होता है। आखिरी चीज जो आपको इस सॉकेट के साथ करनी है, वह है इसके माध्यम से सूचना भेजना। चूंकि यह एक यूडीपी सॉकेट है, इसलिए आपको बस उस कंप्यूटर का आईपी और पोर्ट पता होना चाहिए जिसे आप जानकारी भेज रहे हैं, भेजने के लिए सिंटैक्स "सॉकेटनाम.सेंड्टो (आईपी, पोर्ट)" है।
चरण 4. वैश्विक चर बनाएँ।
इस चरण के लिए आपको कई चरों को परिभाषित करने की आवश्यकता होगी, जिसमें एक उपयोगकर्ता सूची, पोर्ट नंबर, क्लाइंट की संख्या, थ्रेड के लिए क्लाइंट और रूम आईडी शामिल हैं। आपको एक सॉकेट भी बनाना होगा ताकि आपका सर्वर इंटरनेट से इंटरैक्ट कर सके। यह एक नया सॉकेट ऑब्जेक्ट बनाकर और इसे एक निश्चित पोर्ट नंबर के साथ आपके आईपी पते पर बांधकर किया जाता है। (पोर्ट नंबर कुछ भी हो सकता है लेकिन आमतौर पर इसका उपयोग करने वाली किसी अन्य प्रक्रिया या आरक्षित पोर्ट नंबरों का उपयोग करने से बचने के लिए यह कुछ अधिक होता है।)
चरण 5. मुख्य सर्वर प्रक्रिया बनाएँ।
यह ग्राहक के पते के साथ-साथ पहले बनाए गए धागे को भी शुरू करेगा। इसमें बफ़र से डेटा प्राप्त करने की प्रतीक्षा करना और क्लाइंट का पता प्राप्त करना और इसे थ्रेड में उपयोग करने के लिए सहेजना शामिल है। अपने सॉकेट से जानकारी प्राप्त करने का तरीका "socketName.recvfrom(1024)" द्वारा कॉल करना है, यहां संख्या केवल बाइट्स की मात्रा है जो एक बार में पढ़ी जाती है। इस उदाहरण में हम इसे userAddr नामक एक वेरिएबल में संग्रहीत कर रहे हैं, और ऐसा होने पर आप इस पते को उस सूची में सहेज सकते हैं जो चरण 4 में बनाई गई थी। यदि कथन दो लोगों के कनेक्ट होने पर रूम थ्रेड बनाएगा और केवल एक कमरा बनाएगा जब दो अलग-अलग कनेक्शन होते हैं।
चरण 6. अपना काम बचाओ।
यह एक ऐसी निर्देशिका में किया जाना चाहिए जिसे प्राप्त करना आसान हो ताकि इसे परीक्षण के लिए आसानी से पहुँचा जा सके।
विधि 3 का 3: परीक्षण
चरण 1. एक परीक्षण क्लाइंट बनाएँ।
यह एक बहुत ही बुनियादी क्लाइंट है जो केवल यह नियंत्रित करेगा कि सर्वर ने दूसरे क्लाइंट की जानकारी वर्तमान क्लाइंट को भेजी है या नहीं। कृपया ध्यान दें कि सर्वर कोड के विपरीत, इस कोड के लिए सर्वर नाम की आवश्यकता होती है। यदि आप यह सब एक कंप्यूटर पर चला रहे हैं, तो सर्वर का नाम आपके पीसी का नाम होना चाहिए। माई कंप्यूटर पर राइट क्लिक करके और प्रॉपर्टीज में जाकर आप अपने कंप्यूटर का नाम पता कर सकते हैं।
चरण 2. अपना काम बचाएं।
यह सर्वर कोड के समान निर्देशिका में होना चाहिए।
चरण 3. तीन अलग-अलग कमांड विंडो खोलें।
स्टार्ट मेन्यू में जाएं और सर्च बार में "cmd" टाइप करें और एंटर दबाएं। ऐसा तीन बार करें। खिड़कियां इस तरह दिखनी चाहिए।
चरण 4. प्रोग्राम चलाएँ।
कमांड विंडो का उपयोग करते समय आपको सटीक पथ टाइप करना होगा। आपको पहले एक कमांड विंडो पर सर्वर कोड चलाना होगा और फिर दूसरे दो पर क्लाइंट कोड का परीक्षण करना होगा। यदि सब कुछ सफल रहा तो आपको ये संदेश आपकी विंडो में कुछ मिलेंगे।
चेतावनी
- यह प्रोग्राम केवल तभी काम करेगा जब इसे चला रहा हो और उसी लोकल एरिया नेटवर्क पर क्लाइंट का परीक्षण कर रहा हो।
- पायथन 2.7.10 पुराना है और इसके समर्थन के अंत के करीब है। अच्छे सर्वर बनाना जारी रखने के लिए, यह अनुशंसा की जाती है कि इसके बजाय पायथन 3 का नवीनतम संस्करण स्थापित किया जाए।