Нөлден сервер құру - үлкен міндет. Алайда, бұл сіздің бағдарламалау дағдыларыңызды едәуір жақсартады және оны сіздің қажеттіліктеріңізге қарай өзгертуге мүмкіндік береді. Бұл оқулықта клиенттер бір -бірімен сөйлесе алатындай сервер құру үшін питон мен төмен деңгейлі розеткалық бағдарламалау қолданылады. Бұл сонымен қатар терезедегі процесті ғана қамтиды. Кейбір ақпарат нұсқаулықта беріледі, бірақ егер сіз кодты алғыңыз келсе, ол суреттерде берілген. (Ескертпе: мұнда берілген нұсқаулар тек негіздері).
Қадамдар
3 әдіс 1: Python орнату
Қадам 1. Python жүктеп алыңыз
Python -ның негізгі веб -сайтына өтіп, Python 2.7.10 жүктеп алыңыз. Жүктеулер әдепкі параметрлері бар python орнатушысының қадамдары арқылы іске қосылады. Бұл сілтеме мына жерде берілген:
Қадам 2. IDLE (Python GUI) іске қосыңыз
Python 2.7 қалтасына кіріп, IDLE (Python GUI) іске қосыңыз, python енді IDLE орналасқан бастау мәзірінде болуы керек.
Қадам 3. Жаңа файл жасаңыз
Жаңадан ашылған терезенің сол жақ жоғарғы бұрышындағы Файлға өтіп, Жаңа файлды таңдаңыз, сізде атауы жоқ бос терезе ашылуы керек.
3 әдіс 2: Сервер құру
Қадам 1. Қажетті модульдерді импорттаңыз
Бұл код үшін қажет екі модуль - «розетка» және «бұру». Мұны бірінші жолға «розеткадан импорттау *» және келесі жолға «импорттық ағын» енгізу арқылы жасауға болады.
Қадам 2. Жаңа ағын жасаңыз
Бұл бір -біріне сәйкес келетін 2 клиентті басқарады. Ағындар - бұл негізгі бағдарлама жұмыс істеп тұрған кезде іске қосылатын процестер. Суретте көрсетілгендей жазыңыз. Бұл ағындағы айнымалыларды кейін шақыруға болатындай етіп орнатады.
Қадам 3. Жіп процесін жасаңыз
Клиенттер тікелей байланысқа шығуы үшін сіз бір -біріне IP мекенжайын және қай портты қолданатын ақпаратты жіберуіңіз керек. Мұны істеу үшін сіз «variableName = socket (AF_NET, SOCK_DGRAM)» көмегімен жасалатын сокет нысанын жасауыңыз керек. Бұл UDP протоколын қолданатын розетка объектісін жасайды. Келесіде розетканы IP -адреске «roomSocket.bind (('', self.port))) бар белгілі бір порт нөмірімен байланыстырыңыз. Бос аймақ сіздің жергілікті желідегі жеке компьютердің IP -адресін білдіреді және self.port оны тағайындайды. осы ағынға қоңырау шалғанда қосылатын порт нөмірі. Бұл розеткамен жасалатын соңғы нәрсе - ол арқылы ақпаратты жіберу. Бұл UDP ұяшығы болғандықтан, сіз ақпаратты жіберіп отырған компьютердің IP мекенжайын және портын білуіңіз керек, жіберудің синтаксисі «socketName.sendto (IP, порт)»
4 -қадам. Жаһандық айнымалыларды жасаңыз
Бұл қадам үшін сізге пайдаланушылар тізімі, порт нөмірлері, клиенттер саны, ағын клиенттері және бөлме идентификаторы кіретін бірнеше айнымалыларды анықтау қажет болады. Сондай -ақ, сіздің серверіңіз интернетпен жұмыс жасай алатындай розетка жасау қажет болады. Бұл жаңа розетка объектісін құру және оны белгілі бір порт нөмірімен IP мекенжайыңызға байланыстыру арқылы жүзеге асады. (Порт нөмірі кез келген нәрсе болуы мүмкін, бірақ оны басқа процесті немесе резервтік порт нөмірлерін пайдалануды болдырмау үшін әдетте жоғары нәрсе.)
Қадам 5. Негізгі серверлік процесті жасаңыз
Бұл клиенттің адресін алады және бұрын жасалған ағынды бастайды. Бұған буферден деректерді алуды күту және клиенттің адресін алу және оны ағында пайдалану үшін сақтау кіреді. Розеткадан ақпарат алудың жолы - «socketName.recvfrom (1024)» арқылы қоңырау шалу, бұл жердегі нөмір - бір уақытта оқылатын байт саны. Бұл мысалда біз оны userAddr деп аталатын айнымалыға сақтаймыз, және бұл орын алғаннан кейін сіз бұл мекенжайды 4 -қадамда жасалған тізімге сақтай аласыз. If операторы екі адам қосылса, бөлме ағыны құрады және тек бөлме жасайды екі түрлі байланыс болған кезде.
Қадам 6. Жұмысыңызды сақтаңыз
Бұл тестілеу үшін оңай қол жеткізуге болатын қол жетімді каталогта жасалуы керек.
3 әдіс 3: тестілеу
Қадам 1. Тест клиентін жасаңыз
Бұл қарапайым клиент, ол сервер басқа клиент туралы ақпаратты ағымдағы клиентке жіберген -жібермегенін ғана шешеді. Сервер кодынан айырмашылығы, бұл код сервер атауын қажет ететінін ескеріңіз. Егер сіз мұның бәрін бір компьютерде іске қоссаңыз, сервер атауы сіздің компьютеріңіздің аты болуы керек. Менің компьютерімді тінтуірдің оң жақ түймесімен басып, қасиеттерге өту арқылы компьютер атауын білуге болады.
Қадам 2. Жұмысыңызды сақтаңыз
Бұл сервер кодымен бір каталогта болуы керек.
Қадам 3. Үш түрлі командалық терезені ашыңыз
Бастау мәзіріне өтіп, іздеу жолағына «cmd» енгізіп, enter пернесін басыңыз. Мұны үш рет жасаңыз. Терезелер осылай болуы керек.
Қадам 4. Бағдарламаларды іске қосыңыз
Пәрмен терезесін пайдалану кезінде дәл жолды енгізу қажет болады. Сіз алдымен серверлік кодты бір командалық терезеде, содан кейін қалған екеуінде клиенттік кодты іске қосуыңыз керек. Егер бәрі сәтті болса, сіз терезеде осы хабарламаларды аласыз.
Ескертулер
- Бұл бағдарлама оны іске қосқанда ғана жұмыс істейді және клиенттерді бір жергілікті желіде тексереді.
- Python 2.7.10 ескірген және қолдауды аяқтауға жақын. Жақсы серверлерді құруды жалғастыру үшін оның орнына Python 3 соңғы нұсқасын орнату ұсынылады.